expresiones regulares

Xin xinxic en gmail.com
Vie Sep 14 13:18:32 CEST 2007


Una ayudita de parte de Django:

- Comprovación de correo-e:
> email_re = re.compile(
>     r"(^[-!#$%&'*+/=?^_`{}|~0-9A-Z]+(\.[-!#$%&'*+/=?^_`{}|~0-9A-Z]+)*"  
>  # dot-atom
>      
> r'|^"([\001-\010\013\014\016-\037!#-\[\]-\177]|\\[\001 
> -011\013\014\016-\177])*"' # quoted-string
>     r')@(?:[A-Z0-9-]+\.)+[A-Z]{2,6}$', re.IGNORECASE)  # domain

- Comprovación de url:
> url_re = re.compile(
>     r'^https?://' # http:// or https://
>     r'(?:(?:[A-Z0-9-]+\.)+[A-Z]{2,6}|' #domain...
>     r'localhost|' #localhost...
>     r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})' # ...or ip
>     r'(?::\d+)?' # optional port
>     r'(?:/?|/\S+)$', re.IGNORECASE)

Xin

El 14/09/2007, a les 12:33, en/na joana salgado gomez va escriure:

>
> Hola a todos::
> sigo validando informacion el problema me surge cuando quiero validar  
> una direccion web, por ejemplo 'http://www.google.com' puede tener  
> signos variados, letras y numeros como indico esto:
> "w+"  esta expresion regular es para comprobar si hay letras y numeros.
> ¿cual deberia usar para saber si hay letras o numeros o espacios o  
> puntos o signos de interrogacion...???????
>
>
> Muchas gracias a tod en s> Date: Sat, 1 Sep 2007 19:57:05 +0200> From:  
> pych3m4 en gmail.com> To: python-es en aditel.org> Subject: Re: [Python-es]  
> expresiones regulares> > El 1/09/07, joana salgado gomez  
> <joana_mendaro en hotmail.com> escribió:> > > Me has dicho que para  
> comprobar si solo hay letras y números se usa "w+" pero y para  
> comprobar que solo haya letras(considerando como letras las vocales  
> acentuadas y la eñe en sistemas en castellano.) y espacios en blanco,  
> por ejemplo 'José Aldaña'.> > No hay nada especial para este caso. Si  
> el "locale" funcionara como> debe, serviría la cadena string.letters  
> para crear el patrón> '['+string.letters+']'> > La solución que te  
> aconsejo es indicar explícitamente los caracteres:> > [a-zA-ZáéíóúñÑ  
> ]> > > Quizás con la llegada del python3000 se implementen las  
> expresiones> regulares en unicode (UTS#18). Entonces se podría buscar  
> sólo letras> con este patrón: "\p{letter}" e incluso considerar que  
> estamos> usando el español tradicional para que tome como una sóla  
> letra las> letras dobles 'll', 'rr' y 'ch'.> > UTC#18:  
> http://www.unicode.org/reports/tr18/>  
> _______________________________________________> Python-es mailing  
> list> Python-es en aditel.org>  
> http://listas.aditel.org/listinfo/python-es
> _________________________________________________________________
> Consigue el nuevo Windows Live Messenger
> http://get.live.com/messenger/ 
> overview_______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es
>




Más información sobre la lista de distribución Python-es