En Perl, ¿cuál es una buena manera de realizar un reemplazo en una cadena utilizando una expresión regular y almacenar el valor en una variable diferente, sin cambiar el original?¿Cómo realizo una sustitución Perl en una cadena mientras mantengo el original?
Por lo general, solo copio la cadena a una nueva variable y luego la ato a la expresión regular s///
que hace la sustitución en la nueva cadena, pero me preguntaba si hay una mejor manera de hacerlo.
$newstring = $oldstring;
$newstring =~ s/foo/bar/g;
Ya sea bajo uso estricto. Alcance mínimo de las variables ++ – ysth
Me preguntaba si algo como 'mi $ new = $ _ for $ old = ~ s/foo/bar;' funcionaría? – Benoit
@Benoit, creo que te refieres a 's/foo/bar/para mi $ newstring = $ oldstring;' Funciona, pero es mucho más extraño. – ikegami