即你怎么做?
String string = "Sample string with ${title} to be inserted.";
string.replaceAll("${title}", title);
Run Code Online (Sandbox Code Playgroud)
以下所有结果都会导致错误:
string.replaceAll("\\${title}", title);
string.replaceAll("\\\\${title}", title);
string.replaceAll("\\\\$\\{title\\}", title);
Run Code Online (Sandbox Code Playgroud)
而且,似乎没有任何工作,它都会导致如下错误:
java.util.regex.PatternSyntaxException: Illegal repetition near index 4 \\$\\{title\\}
at java.util.regex.Pattern.error(Pattern.java:1713)
at java.util.regex.Pattern.closure(Pattern.java:2775)
at java.util.regex.Pattern.sequence(Pattern.java:1889)
at java.util.regex.Pattern.expr(Pattern.java:1752)
Run Code Online (Sandbox Code Playgroud)
rat*_*eak 23
Pattern类有一个转义函数,用于这样的用途
string.replaceAll(Pattern.quote("${title}"), title);
Run Code Online (Sandbox Code Playgroud)
Bol*_*ock 15
不确定最后一个会导致错误; 它只是没有匹配任何东西,因为你在它上面使用了太多的反斜杠$
.
这应该工作:
string.replaceAll("\\$\\{title\\}", title);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9387 次 |
最近记录: |