java - 当部分具有共同字符时如何替换字符串的多个部分?

标签 java string

我需要更改单个字符串的几个部分,其中指定的部分有一些共同的字符;例如:

worker => working

work => worked

note :: "=>" means "changes to"

使用如下代码会产生大量错误:

String txt = "work like a real worker";
String txt2 = txt.replace("worker", "working").replace("work", "worked");

As I tested the codes above, they output "worked like a real workeding", however I need to get "worked like a real working".

最佳答案

如果您使用replaceAll 而不是replace,您可以使用正则表达式。正则表达式将允许您使用 \b 来表示 word boundaries .这样做,您只会替换整个单词,而不是像您现在所做的那样替换单词的一部分。

String txt2 = txt.replaceAll("\\bworker\\b", "working").replaceAll("\\bwork\\b", "worked");

关于java - 当部分具有共同字符时如何替换字符串的多个部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57074216/

相关文章:

java - MD5 hashing在IOS和windows中相同,在java中不同

sql - Heroku Postgres 上 SQL 查询中的字符串比较

java - Play 框架 2 (Java) 表单数据绑定(bind)与嵌套允许字段

java - 如何使用 Java 搜索网站的损坏链接?

java - bean 初始化失败;嵌套异常是 java.lang.IllegalArgumentException : Pointcut is not well-formed: expecting ')'

string - Erlang替换字符串中的子字符串

c - 如何判断字符串是否为 Lapindrome?

c++ - Ho 得到一个字符串,直到一个字符的最后一次出现

java - java中提取省略某些字符的字符串

java - 如何为 Web 应用程序创建一个插件来计算每个调用的方法的执行时间