Expresiones regulares.

Salvador Ortiz Garcia sog@msg.com.mx
Fri, 13 Feb 1998 22:21:04 -0600 (CST)


On Fri, 13 Feb 1998, Adrian Galindo wrote:

> Hola lista, aqui batallando con las ER. Tengo la variable
> 
> $linea = "hola mundo, como estas?"; 

Hola Adrian:

Prueba:

$linea =~ s/ ([^ ]*)$/ ^c$1/;

Pero la que sigue es 8 veces más rapida para tu cadena de prueba.

substr($linea,$i,0) = '^c' if $i = rindex($linea,' ')+1;

Las ER que incluyen '$' pierden eficiencia geométricamente conforme
aumenta la longitud de la cadena o la complejidad de la ER.

En cambio la función 'rindex' está optimizada.

Saludos.

Salvador Ortiz.