码:

record = record.replace("%icmp4-echo.*%","%\"icmp4-echo.*\"%");


原始记录为:

%icmp4-echobalabalabalabala%


想要替换为:

%"icmp4-echobalabalabalabala"%


但是我的代码不起作用。需要一些帮助或提示。
谢谢!

最佳答案

使用String#replaceAll()

String input = "%icmp4-echobalabalabalabala%";
input = input.replaceAll("%(icmp4-echo.*?)%", "%\"$1\"%");


在这里,我们匹配模式%(.*?)%,然后将其替换为%"$1"%。数量$1是一个捕获组,等于括号内的任何内容。附带说明一下,如果要替换字符串中的多个匹配项,则使捕获组(.*?)不贪心。

关于java - Java正则表达式不替换我的模式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42778804/

10-10 12:34