正则表达式替换但保留字符串的一部分

9 java regex

所以,如果我想用f替换字符串中的b [here here],我将如何做到这一点?示例:什么是使foobarfoo成为foofarfoo的正则表达式,以及foobanfoo为foofanfoo?

eri*_*son 12

这里的基本原则是"捕获组":

String output = input.replaceAll("foob(..)foo", "foof$1foo");
Run Code Online (Sandbox Code Playgroud)

将感兴趣的部分放在括号内的正则表达式中.然后可以通过替换文本中的组编号或通过Matcher.group()方法引用它.