我必须摆脱超过1个空间,如果有超过1个空间我用单个空格替换它.这就是我做到了这一点,但我真的很困惑,这是做到这一点的最佳方式,以及所有这些的区别.下面是我的代码:
public class SspaceDemo {
public static void main(String[] as) {
String s=" Hi this space Demo ";
String s1 = s.replaceAll("\\s +", " ");
System.out.println(s1.trim());
String s2 = s.replaceAll(" +", " ");
System.out.println(s2.trim());
String s3 = s.replaceAll(" {2,}", " ");
System.out.println(s3.trim());
}
}
Run Code Online (Sandbox Code Playgroud)
这是实现结果的最佳方式.请建议.谢谢,
vik*_*iii 10
这是最好的方法.
s = s.replaceAll("\\s+", " ");
Run Code Online (Sandbox Code Playgroud)
**那是什么意思?
\ s +是正则表达式.\ s匹配空格,制表符,换行符,回车符,换页符或垂直制表符,+表示"其中一个或多个".因此,上面的代码将折叠所有"空格子串"长于一个字符,具有单个空格字符.**