expresiones regulares

Chema Cortes pych3m4 en gmail.com
Sab Sep 1 19:57:05 CEST 2007


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/




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