Java String查找并替换零件

时间:2018-06-06 08:51:56

标签: java string replace

我有一个看起来像这样的输入字符串。

String str="abc + abcd * abcde"

我想替换

  

abc with“xyz”。

当我尝试替换字符串的函数时,它取代了所有出现的abc。

我应该将最后一个字符串作为

String str="xyz + abcd * abcde"

“abc”不一定是String中的第一个单词。

我只需要替换包含"abc"的单词,而不是包含"abcd"的单词。如果我使用"replace",,它将替换所有不需要的abc。

“abc”将在abc之后拥有运算符。像这样的东西“abc + abcd + abcde”

这个问题有没有优雅的解决方案?

1 个答案:

答案 0 :(得分:0)

您可以使用正则表达式单词边界匹配器\b

str = str.replaceAll("\\babc\\b", "xyz");

请参阅https://www.regular-expressions.info/wordboundaries.html