Hola,
Me está dando problemas un bucle pero sólo en la última vuelta del mismo, y me tiene desconcertado.
Tengo un fichero que contiene lo siguiente:
Using text Syntax Highlighting
00100110
11011011
00110011
11001101
Coloreado en 0.000 segundos, usando
GeSHi 1.0.8.4
Con el siguiente código, reviso sí cualquiera de estas líneas está en un
hash que anteriormente he rellenado con su contenido ( o sea, que en el
hash están todas las líneas).
Si la línea está en el
hash, cómo es el caso, debe imprimir en el fichero la misma línea pero comentada ( # delante de la línea ).
También puede pasar que haya una línea ya comentada, en cuyo caso, la imprimimos al fichero tal cual.
Y el caso es que funciona perfecto, salvo en la última línea del fichero, que la imprime, pero sin el comentario.
Y me he asegurado de que en el
hash está también la última línea...
¿Tenéis idea de por qué puede estar pasando esto?
Using perl Syntax Highlighting
HASH: while (my $linea = <IN>) {
if ($linea =~ /^#(.+)$/){ print OUT "$linea"; next HASH;};
if (exists $HASH{$linea}) {
print OUT '#';
}
print OUT $linea;
}
Coloreado en 0.002 segundos, usando
GeSHi 1.0.8.4