Tengo algunos problemas con el siguiente programa:
Using perl Syntax Highlighting
# Por cada linea
foreach my $linea ( @lineas )
{ chomp $linea;
# Se crea eje
my @eje = 1..4;
# Por cada palabra
foreach my $palabra ( split(" ", $linea) )
{ # Si la palabra Articulo
if ($palabra eq "LA")
{ push @{$eje[3]}, $palabra;
}
# Si la palabra es Sustantivo
if ($palabra eq "CASA")
{ push @{$eje[0]}, $palabra;
}
# Si la palabra es Verbo
if ($palabra eq "ES")
{ push @{$eje[2]}, $palabra;
}
# Si la palabra Adjetivo
if ($palabra eq "BONITA")
{ push @{$eje[1]}, $palabra;
}
}
my @reg;
my $k;
# print join(",", @{$eje[$_]} ) for 0..3;
for($k = 0; $k < 4; $k++)
{
push @reg , join (" ", @{$eje[$k]});
print "lo que tiene reg es $k es: @reg \n";
}
print "lo que tiene reg es @reg\n";
my @regis = join(",", @reg);
print "lo que tiene regis es @regis\n";
foreach my $campo3(@regis)
{ print "lo que tiene campo3 es $campo3\n";
print "\n";
}
}
foreach my $linea ( @lineas )
{ chomp $linea;
# Se crea eje
my @eje = 1..4;
# Por cada palabra
foreach my $palabra ( split(" ", $linea) )
{ # Si la palabra Articulo
if ($palabra eq "LA")
{ push @{$eje[3]}, $palabra;
}
# Si la palabra es Sustantivo
if ($palabra eq "CASA")
{ push @{$eje[0]}, $palabra;
}
# Si la palabra es Verbo
if ($palabra eq "ES")
{ push @{$eje[2]}, $palabra;
}
# Si la palabra Adjetivo
if ($palabra eq "BONITA")
{ push @{$eje[1]}, $palabra;
}
}
my @reg;
my $k;
# print join(",", @{$eje[$_]} ) for 0..3;
for($k = 0; $k < 4; $k++)
{
push @reg , join (" ", @{$eje[$k]});
print "lo que tiene reg es $k es: @reg \n";
}
print "lo que tiene reg es @reg\n";
my @regis = join(",", @reg);
print "lo que tiene regis es @regis\n";
foreach my $campo3(@regis)
{ print "lo que tiene campo3 es $campo3\n";
print "\n";
}
}
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
La idea es que si se ingresa una oración como LA CASA ES BONITA, deje en el arreglo eje (y según la posición indicada) los elementos de dicha oración, sin embargo si en la entrada se tiene 2 o más veces la oración, la salida generada se duplica o triplica (según la cantidad de veces que esté la oración repetida en la entrada).
He intentado inicializar las variables para limpiarlas pero no pasa nada...
Bueno esperando una buena acogida a este problema, me despido...
Katty.