Convert java string to string compatible with a regex in replaceAll
14,609
Solution 1
You can use Pattern.quote("$money")
.
Solution 2
Prepend the \\Q
in front of the string, and \\E
at the end:
"\\Q$money\\E"
This tells the regex engine that the string between \Q
and \E
must be interpreted verbatim, ignoring any metacharacters that it may contain.
Author by
Kevin Colin
Updated on June 30, 2022Comments
-
Kevin Colin almost 2 years
Is there a library or any easy way to convert a string and make sure its compatible as a regex to look for and replace in another string. So if the string is "$money" it would get converted to "\$money". I tried using StringEscapeUtil.escape but it doesn't work with characters such as $.