繁体   English   中英

如何使用Matcher正确替换字符串中所有出现的模式

[英]How to use Matcher to properly replace all occurences of a pattern inside a string

我正在使用Matcher在包含文本的String中查找特定模式。
正则表达式检查各种模式,例如是否简单:
\\\\bword1\\\\b|(\\\\b(?:word2(?:(\\\\s+)word3)?)?)

无论如何,我可以在字符串中找到模式。
到目前为止,还可以。

我想要的是能够使用Matcher.replaceAll来替换找到的每个模式, 并以相同的模式添加一些附加的模式

例如

如果匹配器在某处找到了word1 ,我想用{v}word1{v}替换它。

我试图将匹配器找到的组添加到列表中,然后循环遍历输入字符串以替换所有字符串,但显然这是行不通的。

更新:
我可以匹配所需的术语,并且@Luis regex进行替换,但是我需要替换所有 String。
通过循环并在字符串中执行正则表达式"pattern", "{v}$0{v}") ,我打破了以前发生的情况。 我需要以某种方式在replaceAll中加入否定的含义 ,以便了解术语何时已被替换

更新:
使用@Luis正则表达式并在其后面使用负向外观

更新:

"pattern".replaceAll("pattern", "{v}$0{v}"))

我已经对此进行了测试,并根据需要返回“ {v}模式{v}”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM