我多次使用我的程序中的字符串。
有没有办法更有效地使这行Java代码:
String str2 = str.replaceAll("\\s+", " ").trim();
答案 0 :(得分:1)
您可以尝试使用预编译模式:
private Pattern p = Pattern.compile( "\\s+" );
然后像这样使用它:
str2 = p.matcher( str.trim() ).replaceAll( " " );
一个不需要修剪的更复杂的版本:
private Pattern p = Pattern.compile( "^\\s+|\\s+(?= )|\\s+$" );
str2 = p.matcher( str ).replaceAll( "" ); // no space