Vie Oct 31, 2008 6:25 am
|
 |
asegurac
Perlero Nuevo

|
Registrado: 31 Oct 2008
Mensajes: 1
|
|
| Extraer información de un archivo de texto |
|
|
Hola,
Soy nuevo en perl, estoy haciendo un script que lee la información a partir de un archivo de texto de la siguiente estructura:
| Código: |
1 2 r w 3 t 4 r 4b v 5
a b c b d f g g g
a b c b d f g g g
a b c b d f g g g
a b c b d f g g g
s 2 r w 3 t 4 r 4b v 5 |
Por ejemplo me interesa extraer la información contenida en la columna 1 y 6:
Ya tengo el siguiente código:
| Perl: | #!/usr/bin/perl -w
$filename = $ARGV[0];
open(FILE, $filename) || die "¡Error!\n\n";
open SALIDA, ">salida1";
while(my $lines = <FILE>){
chomp($lines);
my @field = split (/\ s+/, $lines);
print SALIDA "columns: $field[1]\n";
}
close FILE; |
El resultado es la columna 1, incluyendo el número "1" de la primera fila y la letra "s" de la última, ¿Qué puedo hacer para extraer solo la información contenida entre la primera y última fila?
Gracias |
|
|
|

Vie Oct 31, 2008 6:46 am
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4239
Ubicación: Valladolid, España
|
|
|
|
|
Bienvenido a los foros de Perl en Español, asegurac.
No entiendo muy bien la cuestión. Primero hablas de columnas 1 y 6 y luego hablas de la información que hay entre la primera fila y la última.
Si solo quieres imprimir las líneas que empiezan por 'a', es muy fácil:
| Perl: | #!/usr/bin/perl
while(<DATA>) {
print if /^a/;
}
__DATA__
1 2 r w 3 t 4 r 4b v 5
a b c b d f g g g
a b c b d f g g g
a b c b d f g g g
a b c b d f g g g
s 2 r w 3 t 4 r 4b v 5 |
|
|
Powered by phpBB © 2001, 2005 phpBB Group
|