考虑一个例子,
String str1 = "hello world";
String str2 = str1.replace("low","xxx");
System.out.println(str2);
现在当我打印str2时,它应该打印helxxxorld。我的要求是我不想先删除 str1 中的所有空格,然后再替换。我该怎么做?
您可以使用
String#replaceAll()
方法,该方法允许您传递正则表达式:
String str1 = "hello world";
String str2 = str1.replaceAll("l\s*o\s*w","xxx");
System.out.println(str2);
\s*
将匹配l
符号和o
符号后的零个或多个空格
使用带空格的正则表达式:
String str2 = str1.replaceAll("l\s*o\s*w", "xxx");
输出:
helxxxorld