利用replace和replaceAll、replaceFirst()方法
例题:去掉字符串中多余的空格:
1.replace(oldchar,newchar):去掉所有的空格
(用newchar字符替换oldchar字符,然后返回一个新的字符串)
例如;将字符串a中的空格去掉:
String a=in.nextLine();
String b=a.replace(" “,”");
其中去掉空格的oldchar和newchar都得用双引号
2.replaceAll(regex,replacement):去掉所有的空格
(利用replacement的字符串替换regex所匹配的正则表达式的每个字符串)
例如;将字符串a中的空格去掉:
String a=in.nextLine();
String b=a.replaceAll("\\s","");
特殊例题:
例:将字符串a中的多个空格变为一个空格
String a=in.nextLine();
String b=a.replaceAll("\\s+","");
//或者可以表示为:String b=a.replaceAll(" +","");加号前面留个空格;
3.trim():去掉字符串的首端空格,但是中间的空格不变
例如;将字符串a中的空格去掉:
String a=in.nextLine();
String b=a.trim();
不管字符串的首端有多少个空格都去掉
replace()与replaceAll()的区别:
1.replace()可以用于字符的替换,以及字符串的替换。使用replace(oldchar,newchar)的时候 ,如果用于空格的去掉时,则oldchar和newchar都用双引号,如果用于其他字符的替换时,则oldchar和newchar可以用双引号或者单引号。
2.replaceAll()主要是基于正则表达式的替换。
replaceAll()中的一些特殊的例子:
1.replaceAll("\d","*"):把一个字符串所有的数字字符都变为星号
replaceFirst():也是基于正则表达式的替换,不过,只是替换第一个出现的字符
例如:String a=“ejhf3js4jhf”;String b=a.replaceFirst("\d",“a”);>>ejhfajs4jhf