双花括号的Java正则表达式模式

双花括号的Java正则表达式模式,java,regex,Java,Regex,我有一个 String url = "/rest/devices/{{deviceId}}"; 其中,{{deviceId}}我想用一些deviceId替换的值 url.replace("{{deviceId}}", device.getId()); 但它不起作用 因此,该怎么办?我想你错过了一个作业和考试结果 url.replace(“{{deviceId}}”,device.getId())被忽略 那么: url=url.replace(“{{deviceId}}”,device.get

我有一个

String url = "/rest/devices/{{deviceId}}";
其中,
{{deviceId}}
我想用一些deviceId替换的值

url.replace("{{deviceId}}", device.getId());
但它不起作用


因此,该怎么办?

我想你错过了一个作业和考试结果

url.replace(“{{deviceId}}”,device.getId())被忽略

那么:


url=url.replace(“{{deviceId}}”,device.getId())

我想你错过了一个作业和考试结果

url.replace(“{{deviceId}}”,device.getId())被忽略

那么:


url=url.replace(“{{deviceId}}”,device.getId())

您是否尝试过转义大括号(例如,
“\\{\\\{deviceId\\\\}”
)?@anij,请解释一下“它不工作”的意思。@KennethK
String.replace
不是基于正则表达式的,所以不需要转义。@Alex当我使用
时。replace()
它不替换值,当使用
replaceAll()
时,则得到以下异常
java.util.regex.PatternSyntaxException:非法重复{{deviceId}
请查看@maszter的答案,很可能这就是原因。方法调用本身是正确的,但该方法不修改原始字符串-它返回字符串的副本,并完成替换。您可能只是丢弃了返回值,因此出现了错误。您是否尝试过转义大括号(例如,
“\\{\\{deviceId\\\}\\\}”
)?@anij,请解释一下“它不工作”的意思。@KennethK
String.replace
不是基于正则表达式的,所以不需要转义。@Alex当我使用
时。replace()
它不替换值,当使用
replaceAll()
时,则得到以下异常
java.util.regex.PatternSyntaxException:非法重复{{deviceId}
请查看@maszter的答案,很可能这就是原因。方法调用本身是正确的,但该方法不修改原始字符串-它返回字符串的副本,并完成替换。您可能只是丢弃了返回值,因此出现了错误。您应该解释OP代码不起作用的原因您应该解释OP代码不起作用的原因