Perl - Expresiones regulares

 
Vista:

Expresiones regulares

Publicado por kaliskunk (1 intervención) el 17/08/2006 10:05:12
Hola a todos, estoy pegándome con expresiones regulares en Perl. No encuentro una referencia bibliográfica completa o al menos todo lo socmpleta que me gustaría.

Encuentro pocos ejemplos y me gustaría saber si alguiern conoce alguna web que me pueda ayudar.

De todas formas os dejo algo que quiero hacer y que no consigo dejarlo fino, es lo siguiente: encontrar una secuencia de caracteres concreta que es

src="[email protected]"

quiero encontrar si en un html está justo esa secuencia.

Muchas gracias a todos.

Salu2
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Expresiones regulares

Publicado por Joaquin Ferrero (48 intervenciones) el 17/08/2006 15:43:53
Buenas...

La mejor referencia sobre las expresiones regulares de Perl está en el propio Perl. Tanto si estás en Windows como en Unix, mira por la página de manual perlre. Allí está todo. O vía web en: http://perldoc.perl.org/perlre.html

También es recomendable visitar las faq, en concreto perlfaq6, o aquí:
http://perldoc.perl.org/perlfaq6.html

(La traducción al español de la documentación de Perl está en marcha en estos momentos.)

En libros, hay uno publicado por O'Reilly titulado "Mastering Regular Expressions", pero sólo es recomendable para quienes quieran profundizar mucho en el tema.

Para el problema que planteas, es muy fácil, ya que es un conjunto de secuencias:

#!/usr/bin/perl -lw

$html = qq(<html>\n<body>\n<h1>Ejemplo</h1>\nabcde.jpg\@jj.kk\n</body>\n</html>\n);
print $html;

while ( $html =~ m/(\w+\.\w+@\w+\.\w+)/g ) {
print $1;
}

La expresión regular busca una secuencia de letras (\w+) seguidas de un punto (\.) seguida de otra secuencia de letras, una arroba, otra secuencia de letras, otro punto y otra secuencia.

Visita la web perlenespanol, donde encontrarás más soporte que aquí.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar