• Publicidad

Extraer texto

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Extraer texto

Notapor lodimoni » 2006-06-07 05:14 @260

Buenas, vuelvo a no aclararme con las expresiones regulares. Es que no entiendo como poner las cosas.
Tengo la siguiente línea:
Platform: cisco WS-C2924-XL, Capabilities: Trans-Bridge Switch

y quiero extraer el "WS-C2924-XL".
El modelo puede cambiar, pero la estructura siempre es igual, primero platform: cisco y después del modelo la coma.

Yo estoy poniendo
Código: Seleccionar todo
($model2) = $model =~ m/\Platform:\s+cisco\s+([^,]+),/;
y no me sale nada.

¿Podrías decirme que estoy poniendo mal? Bueno, ésta es una de las ya muchas combinaciones que he hecho :___

Gracias
lodimoni
Perlero nuevo
Perlero nuevo
 
Mensajes: 3
Registrado: 2005-10-25 07:25 @351

Publicidad

Notapor explorer » 2006-06-07 06:05 @295

Sobra un '\' al principio.
Código: Seleccionar todo
$model = "Platform: cisco WS-C2924-XL, Capabilities: Trans-Bridge Switch";
($model2) = $model =~ m/Platform:\s+cisco\s+([^,]+),/;
print $model2; # WS-C2924-XL

Si estás completamente seguro de que todos los aparatos son cisco, puedes usar esta otra expresión regular:
Código: Seleccionar todo
($model2) = $model =~ m/cisco *(.+?),/;

es decir, nos quedamos (()) con lo (.+) que sigue a la palabra 'cisco' seguido de algunos espacios ( *), hasta la primera coma (usamos un ? para evitar que .+ se lea toda la línea. Queremos que pare en la primera combinación de la expresión regular, esto es, en la primera que coincida con la primera coma encontrada).
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 lodimoni » 2006-06-07 06:40 @319

hola!!

muchas gracias!!!!

jolin, por culpa de una barrita :) ¬¬

saludos :D
lodimoni
Perlero nuevo
Perlero nuevo
 
Mensajes: 3
Registrado: 2005-10-25 07:25 @351


Volver a Básico

¿Quién está conectado?

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