String output = new String(encryptText);
output = output.replaceAll("\\s", "");
return output;
replaceAll("\\s", "");
不工作
String output = new String(encryptText);
output = output.replaceAll("\\s", "");
return output;
replaceAll("\\s", "");
不工作
String output = new String(encryptText);
output = output.replaceAll(" ", "");
return output;
我遇到了同样的问题,然后我搜索了很多,发现它不是空格字符,而是从字符数组转换为字符串的空值。这为我解决了这个问题 -
output.replaceAll(String.valueOf((char) 0), "");
您的代码对我来说很好,请参见此处
无论如何,您可以使用Spring框架中的StringUtils.trimAllWhitespace:
output = StringUtils.trimAllWhitespace(output);
使用String.replaceAll(" ","")
,或者如果您想在没有 lib 调用的情况下自己做,请使用它。
String encryptedString = "The quick brown fox ";
char[] charArray = encryptedString.toCharArray();
char [] copy = new char[charArray.length];
int counter = 0;
for (char c : charArray)
{
if(c != ' ')
{
copy[counter] = c;
counter++;
}
}
char[] result = Arrays.copyOf(copy, counter);
System.out.println(new String(result));
您可以使用非正则表达式替换来完成这项工作:
output = output.replace(" ", "");