我如何删除整个单词 on(而不是子 on在Confirmed从下面的字符串)?
X-JP409 Confirmed on 13/2/12
Run Code Online (Sandbox Code Playgroud)
正则表达式中有单词的特殊标记:\b.所以更好的方法是myString.replaceAll("\\bon\\b", "");
当'on'一词位于文本的开头,结尾和中间时,这是有效的,但前提是它是一个单独的单词.例如,它不会从单词"one"中删除"on".
小智 5
如果要替换所有不在单词中的"on",您也可以尝试匹配单词boundary\b.希望能帮助到你.
String abc = "on X-JP409 Confirmed on 13/2/12 on";
abc = abc.replaceAll("\\bon\\b", "");
System.out.println(abc);
Run Code Online (Sandbox Code Playgroud)
要么
String abc = "on X-JP409 Confirmed on 13/2/12 on";
abc = Pattern.compile("\\bon\\b").matcher(abc).replaceAll("");
Run Code Online (Sandbox Code Playgroud)
replaceAll实际上是在调用Patternapi.