Using perl Syntax Highlighting
- my $fitxkopia;
- open( my $FITX, $fitxategia );
- {
- local $/;
- $fitxkopia = <$FITX>;
- # $fitxkopia;
- }
- close $FITX;
- &Hash_Taula_Kargatu($fitxkopia);
- sub Hash_Taula_Kargatu {
- my @term_arraya1;
- my @term_arraya2;
- my %Moten_Hash_Taula = (
- "N.IZE-ARR" => \@term_arraya1,
- "G.ADJ-ARR" => \@term_arraya2
- );
- my $fitxategia2 = $fitxkopia;
- chomp($fitxategia2);
- my $FITXkop = XML::XPath->new( filename => $fitxategia2 ); #irakurri fitxategia;
- my $nodeset = $FITXkop->find('/KAF/terms/term'); # bilatu "term" paragrafoak kaf fitxategian.
- my $gakoa;
- foreach my $node ( $nodeset->get_nodelist ) {
- my $term = XML::XPath::XMLParser::as_string($node); #Nodo horren informazioa string moduan gorde.
- ($gakoa) = $term =~ /pos="(.*?)"/;
- push( @{ $Moten_Hash_Taula{"$gakoa"} }, $term );
- my @array = @{ $Moten_Hash_Taula{"N.IZE-ARR"} };
- #
- print(@array);
- }
- }
Coloreado en 0.006 segundos, usando GeSHi 1.0.8.4
Quiero que coja el archivo, lo lea y cargue algunas partes (las que tienen N.IZE-ARR) en una tabla hash en la clave "N.IZE_ARR". Para comprobar si lo carga hago print(@array), pero en lugar de eso lo que hace es sacarme por pantalla todo el archivo. He probado quitando el "print" pero no afecta. Si ejecuto la subrutina por su lado (es decir, de la línea 16 en adelante), lo hace bien, es decir, sólo imprime lo que quiero, pero no para nunca (bucle infinito). ¡Qué lío!