You can use Pattern.quote("$money")
.
Convert java string to string compatible with a regex in replaceAll [duplicate]
-
01-06-2022 - |
Question
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 $.
Solution
OTHER TIPS
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.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow