[Perl] expresion regular

Ricardo Cumberbatch L. rcumber@utp.ac.pa
Mon, 11 Jun 2001 12:48:23 -0500 (GMT)


Y porq mejor no intentas buscando lo q quieres q quede en vez de lo q NO
quieres q quede ???

On Fri, 8 Jun 2001, Gunnar Wolf wrote:

> > Despues de darle mil y una vueltas ( y reconociendo que las expresiones
> > regulares siempre se me atraviesan ) os planteo un peque=F1o problema q=
ue me
> > trae de cabeza:
> >
> > Se trata de eliminar de una cadena todo aquello que se encuentre en med=
io
> > de dos determinados caracteres:
> >
> > $linea =3D"texto1  [esto fuera] texto2  [esto tambien] texto3 [esto no =
lo
> > quiero]";
> > $linea =3D~ s/\[.*\]//g;
> >
> > y quiero que el resultado de linea sea:
> >
> > $linea =3D"texto1  texto2  texto3 ";
> >
> > Es decir todo lo que se encuentre entre corchetes [] eliminarlo de la
> > cadena.
> >
> > Me he tirado un monton de horas y no consigo el resultado que quiero
>=20
> Me suena sencillo, y corro el riesgo de quedar bastante mal... Pero...
> Intenta:
>=20
> $linea =3D~ s/(esto fuera|esto tambien|esto no lo quiero)//g;
>=20
> El poner las tres expresiones entre par=E9ntesis separadas por barras ind=
ica
> que cualquiera de las ocurrencias ser=E1 exitosa. El poner la g al final
> hace que sea un patr=F3n greedy (ambicioso? avaro? C=F3mo se traduc=EDa?)=
, y se
> busque tantas veces como sea necesario en la cadena.
>=20
> Saludos,
>=20
> ------------------------------------------------------------
> Gunnar Wolf - gwolf@campus.iztacala.unam.mx - (+52)5623-1119
> Desarrollo y Admon. de Sistemas en Red - FES Iztacala - UNAM
> Departamento de Seguridad en Computo   -   DGSCA    -   UNAM
> ------------------------------------------------------------
> Quidquid latine dictum sit, altum viditur.
>=20
>=20
>=20
> _______________________________________________
> Perl mailing list
> Perl@tlali.iztacala.unam.mx
> http://tlali.iztacala.unam.mx/mailman/listinfo/perl
>=20