如何在 Java 中为正则表达式转义文本

2022-08-31 04:51:48

Java是否有一种内置的方式来转义任意文本,以便可以将其包含在正则表达式中?例如,如果我的用户输入“$5”,我想在输入结束后完全匹配它,而不是“5”。


答案 1

Java 1.5 开始,是的

Pattern.quote("$5");

答案 2

Pattern.quoteMatcher.quote之间的差异在我看到以下示例之前对我来说并不清楚

s.replaceFirst(Pattern.quote("text to replace"), 
               Matcher.quoteReplacement("replacement text"));