Estoy usando replaceAll()
en Groovy y quedar atrapado cuando la cadena de reemplazo contiene el símbolo $
(que se interpreta como una referencia del grupo regexp).Groovy replaceAll where replacement contains dollar symbol?
estoy encontrando que tengo que hacer un poco agraciado doble sustitución:
def regexpSafeReplacement = replacement.replaceAll(/\$/, '\\\\\\$')
replaced = ("foo" =~ /foo/).replaceAll(regexpSafeReplacement)
Dónde:
replacement = "$bar"
Y resultado deseado es:
replaced = "$bar"
¿Hay una mejor forma de realizar este reemplazo sin el paso intermedio?
¿Cuál es su cadena de entrada, de salida y de lo ¿Esperas? –
He aclarado la pregunta –