[bcn-pm] Expresiones regulares dinámicas en Perl 5.10
Enrique Nell
blas.gordonagmail.com
Div Mar 28 06:12:39 PDT 2008
Hola
Os comento algo que me ha pasado: al actualizar a 5.10, me empezó a aparecer
una advertencia que antes no salía al ejecutar una función de
procesamiento de RTF
en la que utilizo una expresión regular dinámica para detectar pares
de llaves anidados:
my $tags_rx;
$tags_rx = qr/ ( \{ (?: [^{}]+ | (??{ $tags_rx }) )* \} ) /x;
Tras buscar en Internet, encontré una solución:
http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-01/msg01181.html
Al convertir $tags_rx en una "package variable" desaparecen las advertencias:
our $tags_rx;
$tags_rx = qr/ ( \{ (?: [^{}]+ | (??{ $tags_rx }) )* \} ) /x;
¿Es realmente un error o se trata del comportamiento esperado debido a
algún cambio
en la nueva versión?
Saludos
Enrique
Més informació de la llista de correu Barcelona-pm