String x = "axe pickaxe";
x = x.replace("axe", "sword");
System.out.print(x);

通过此代码,我试图将确切的单词axe替换为sword。但是,如果运行此命令,它会打印sword picksword,而我只希望打印sword pickaxe,因为pickaxe是与axe不同的词,尽管它包含ojit_code。我怎样才能解决这个问题?谢谢

最佳答案

将正则表达式与word boundaries \b一起使用:

String s = "axe pickaxe";
System.out.println(s.replaceAll("\\baxe\\b", "sword"));

边界符号的反斜杠必须转义,因此为双反斜杠。

10-08 11:22