如果我有一个带捕获组的正则表达式,例如
foo(_+f)
。如果我匹配一个字符串并想要替换所有匹配中的第一个捕获组为baz
,那么应该怎么做?foo___f blah foo________f
转换为:
foobaz blah foobaz
使用标准库似乎没有简单的方法来做到这一点。如果我使用Matcher.replaceAll(),这将替换整个模式的所有匹配并将字符串转换为
baz blah baz
显然,我可以通过迭代匹配结果,存储每个捕获组的开始和结束索引,然后返回并替换它们,但是否有更简单的方法?
谢谢, Don