practica de expresiones regulares

Horst von Brand vonbrand en inf.utfsm.cl
Lun Sep 20 21:18:44 CLT 2004


Carlos Bortolini <bortolini en glisc.org> dijo:
> Haber si me pueden dar una ayuda, necesito hacer una expresión regular
> en la cual tengas las siguientes particularidades: 
> 
> //Encontrar una cadena con el siguiente formato: 
> 
> define("_ALGO_POR_AQUI","Nada mas que esto")
> define ("_ALGO_POR_AQUI","Nada mas que esto")
>  define ("_ALGO_POR_AQUI","Nada mas que esto")
> define    ("_ALGO_POR_AQUI","Nada mas que esto")
> define	("_ALGO_POR_AQUI","Nada mas que esto")
> define		("_ALGO_POR_AQUI","Nada mas que esto")
> 
> //Las reglas serian las siguientes:
> 
> - tiene que cumplir con dos textos minimos:
> 
> 1. *define* en minusculas

define

> 2. *_ALGO_POR_AQUI* en mayusculas

_ALGO_POR_AQUI

> - despues del define pueden haber o no "n" cantidad de espacios o tabs.

[   ]*

> - en el texto para escrito en mayusculas tiene que estar entre comillas
> dobles 

"..."

> - validar que no este comentada la linea // /* #

O sea, a lo mas espacios antes de 'define'?

^[     ]*

> - pueden existir espacios/tabs antes del texto *define*

OK. Juntamdo todo:

  ^[	     ]*define[	]*("_ALGO_POR_AQUI"


Ojo, [	     ] es '[', ' ', '\t', ']'. Y esto es para el dialecto de
grep(1) o vi(1), aunque debiera funcionar en casi cualquier cosa.

Please, algo complicado a la otra...
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                     Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria              +56 32 654239
Casilla 110-V, Valparaiso, Chile                Fax:  +56 32 797513


Más información sobre la lista de distribución Linux