如何仅替换/编辑Java中的特定单词?
我想要一个特定的单词被替换/编辑。但不幸的是,其他包含要替换单词的单词也被替换了 例如: String test=“我是一个工具”强> 现在如果我想把“ool”这个词换成什么,“tool”也要换了。那么我该如何解决这个问题呢?我只想把ool编辑一下。“工具”应该保持原样 下面是一些代码:如何仅替换/编辑Java中的特定单词?,java,string,replace,Java,String,Replace,我想要一个特定的单词被替换/编辑。但不幸的是,其他包含要替换单词的单词也被替换了 例如: String test=“我是一个工具” 现在如果我想把“ool”这个词换成什么,“tool”也要换了。那么我该如何解决这个问题呢?我只想把ool编辑一下。“工具”应该保持原样 下面是一些代码: public class StringMethoden { public static void main(String[] args) { String bsp = "I am a ool tool
public class StringMethoden {
public static void main(String[] args) {
String bsp = "I am a ool tool";
if (bsp.matches("(.*)ool(.*)")){
bsp = bsp.replaceAll("ool", "test");
System.out.println(bsp);
}
else {
System.out.println("sentence does not conain 'ool' !");
}}
Outut:我是一名测试人员
Java正则表达式中的单词边界(\b
)确保字符串中的某个点是单词的开始/结束
bsp = bsp.replaceAll("\\bool\\b", "test");
这里有一个类似的方法来解决这个问题,我们也可以使用.contains()方法,方法如下,如果有问题,请随时提问
String bsp = "I am a ool tool";
if (bsp.contains(" ool")) {
bsp = bsp.replaceAll(" ool", " test");
System.out.println(bsp);
} else {
System.out.println("sentence does not conain 'ool' !");
}
输出:
我是一个测试工具
单词
“ool”
和部分单词“*ool*”
之间有什么区别?完整的单词周围没有其他字母。