我有三个字符串应用程序app_abc,appabc我想用代码替换任何字符串(用于替换),输出应为
- 应用->代码,
- app_abc-> code_abc,
- appabc-> appabc
我已经尝试过这个replaceAll(“ ^ app”,code); 但它将被替换为启动应用
错误的输出:
- 应用->代码,
- app_abc-> code_abc,
- appabc-> codeabc(我想使用正则表达式排除这种类型的字符串)
我知道我必须使用或操作者,所以我已经尝试过
replaceAll("^app|app_(?!(.*))", code);
https://regex101.com/r/Ils9kM/1
但是我认为有人可以建议这是错误的吗?
您只想abc
在单词的开头和之后没有另一个字母的情况下进行替换。用
replaceAll("\\bapp(?![a-zA-Z])", "code")
如果要abc
跟随单词边界或下划线,则该模式也可以是
"\\bapp(?=\\b|_)"
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句