这是我的正则表达式。我想找到开括号和右括号,并用" \("和" \)"替换它们。
word = word.replaceAll(Pattern.quote("("), "\\" + "(").replaceAll(Pattern.quote(")"), "\\" + ")");
如果word =" word)":
,这是输出New word is: word)
正如你所看到的,它并没有改变一件事。
答案 0 :(得分:1)
尝试使用\\\\
,如下所示:
word = word.replaceAll(Pattern.quote("("), "\\\\" + "(")
.replaceAll(Pattern.quote(")"), "\\\\" + ")");
或没有Pattern.quote
:
word = word.replaceAll("\\(", "\\\\(").replaceAll("\\)", "\\\\)");
或者在您的情况下,您可以使用替换:
word = word.replace("(", "\\(").replace(")", "\\)");
答案 1 :(得分:0)
两个答案有效:
word.replace("(", "\\" + "(").replace(")", "\\" + ")"); – OH GOD SPIDERS
和
replacing \\ with \\\\ in the replaceAll - YCF_L.