• Publicidad

Imprimir ciertas líneas

¿Ya sabes lo que es una referencia? Has progresado, el nível básico es cosa del pasado y ahora estás listo para el siguiente nivel.

Imprimir ciertas líneas

Notapor getdan » 2009-04-07 12:06 @546

Buenas.

¿Cómo hago para imprimir las líneas que empiencen con una palabra y seguir imprimiendo hasta que encuentre una línea que empiece con cierta palabra?

Por ejemplo, quiero imprimir las líneas entre hola y adiós si la entrada es:

Código: Seleccionar todo
hola
prueba de mensaje
continua prueba
adios


Quiero la salida:

Código: Seleccionar todo
hola
prueba de mensaje
continua prueba


Primero hago un if (/^hola/) pero ¿cómo hago para avanzar de línea?

Muchas gracias.
getdan
Perlero nuevo
Perlero nuevo
 
Mensajes: 1
Registrado: 2009-04-07 12:03 @544

Publicidad

Notapor explorer » 2009-04-07 17:22 @765

Bienvenido a los foros de Perl en Español, getdan.

Hace poco hemos comentado ese caso.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor creating021 » 2009-04-14 20:10 @882

También hay otra forma (como cosa rara en Perl :D ) con Tie::File
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!/usr/bin/env perl
use strict;
use Tie::File;

tie my @lineas, 'Tie::File', "my_archivo.txt"
    or die "No se puede abrir el fichero: $!\n";

# Por cada línea...
foreach my $linea ( @lineas ) {
    if ( $linea ne "adios" ) {
        print "$linea\n";
    }
}
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4


Claro, pero no es necesaria, de hecho creo que el método usado con expresiones regulares y usando while es mucho mejor.
Expect the worst, is it the least you can do?
Avatar de Usuario
creating021
Perlero frecuente
Perlero frecuente
 
Mensajes: 595
Registrado: 2006-02-23 16:17 @720
Ubicación: Frente al monitor


Volver a Intermedio

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 10 invitados