我想用另一个词替换长字符串中出现的所有单词,例如,如果我想将以下字符串中出现的所有单词“very”更改为“extremely”。
string story = "He became a well decorated soldier in the line of fire when he and his men walked into the battle. He acted very bravely and he was very courageous."
我想我会使用 replaceAll()
方法,但我会简单地插入诸如
story.replaceAll("very ", "extremely ");
最佳答案
您需要进行两项更改:
- 字符串在 Java 中是不可变的 -
replaceAll
方法不会修改字符串 - 它会创建一个新字符串。您需要将调用的结果分配回您的变量。 - 使用单词边界 (
'\b'
),否则every
将变成eextremely
。
所以你的代码应该是这样的:
story = story.replaceAll("\\bvery\\b", "extremely");
您可能还想考虑您希望“非常”或“非常”发生什么。例如,您可能希望它分别变为“极度”和“极度”。
关于java - 如何用java中的另一个单词替换字符串中所有出现的单词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3223791/