Hola:
Te dejo nada más un comentario acerca de las expresiones regulares que estás usando, por ejemplo:
Using perl Syntax Highlighting
$string =~ s/^\s*//;Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4
Realmente estaría más correcto de la siguiente manera:
Using perl Syntax Highlighting
$string =~ s/^\s+//;Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4
¿Por qué? Debido a que el
\s* le dice a la máquina de regexp que coincida con cualquier espacio que esté 0 o más veces, y pues si no hay espacios ¿cuál es el sentido de la sustitución?
Sin embargo con el
\s+ solamente coincide cuando hay uno o más espacios, que es justamente lo que queremos. Lo mismo es cierto con la expresión usada para quitar espacios al final.
Luego tenemos la siguiente expresión:
Using perl Syntax Highlighting
$string =~ s/^\s*(.*?)\s*$/$1/;Coloreado en 0.002 segundos, usando
GeSHi 1.0.8.4
Es bastante redundante y la podríamos hacer de la siguiente manera:
Using perl Syntax Highlighting
$string =~ s/\s+//g;Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4
Con el modificador
g obligamos a la máquina de regexp a hacer la mayor cantidad de coincidencias posibles, por lo tanto, buscará todos los espacios y los eliminará.
Estos son solamente algunos tips para optimizar lo más posible el código.
Saludos