小编Wej*_*ejn的帖子

Java替换所有反向引用

可能重复:
String.replaceAll()异常与正则表达式中的贪心量词

我正在编写使用的代码,Matcher#replaceAll并发现以下结果非常令人困惑:

Pattern.compile("(.*)").matcher("sample").replaceAll("$1abc");
Run Code Online (Sandbox Code Playgroud)

现在,我希望输出可以,sampleabc但Java会引发我的注意sampleabcabc.

有人有什么想法吗?

现在,当然,当我锚定模式(^(.*)$)时,问题就消失了.我仍然不知道为什么地狱会replaceAll做那样的双重替换.

并加上侮辱伤害,遵循以下代码:

Pattern.compile("(.*)").matcher("sample").replaceFirst("$1abc")
Run Code Online (Sandbox Code Playgroud)

按预期工作,只返回sampleabc.

java regex replaceall

7
推荐指数
2
解决办法
1747
查看次数

标签 统计

java ×1

regex ×1

replaceall ×1