示例输入:
a:b
a.in:b
asds.sdsd:b
a:b___a.sds:bc___ab:bd
示例输出:
a:replaced
a.in:replaced
asds.sdsd:replaced
a:replaced___a.sds:replaced___ab:replaced
:
之后的字符串应替换为自定义函数。
我在没有 Regex
的情况下也做了同样的事情。我觉得它可以用正则表达式替换,因为我们正在尝试从特定模式中提取字符串。
对于前三种情况,在 :
之后提取 String
很简单,但是我找不到处理第三种情况的方法,除非我拆分字符串___
并应用第一种模式的方法并再次连接它们。
最佳答案
只需将 :
旁边的 :
字母替换为字符串 replaced
。
string.replaceAll("(?<=:)[A-Za-z]+", "replaced");
或
如果您还想处理数字,请在 char 类中添加 \d
。
string.replaceAll("(?<=:)[A-Za-z\\d]+", "replaced");
关于Java 字符串正则表达式替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31470029/