Validación de campos a traves de expresiones regulares.

138 views
Skip to first unread message

Eliezer J Romero C

unread,
Feb 6, 2014, 3:35:56 PM2/6/14
to djan...@googlegroups.com
Buenas tardes compañeros, tengo una duda estoy tratando de validar un campo para que sea alfa numérico estoy usando "RegexValidator". Ahora bien la cuestión es que lo normal para validar alfanumérico es [0-9a-zA-Z] Pero como haría yo para que también tome el valor de las vocales [áéíóú y de las ñÑ]. Lo he intentado de dos maneras.

1: [0-9a-zA-Záéíóúñ] <---- NO FUNCA
2: '^[a-zA-Z\ \'\u00e1\u00e9\u00ed\u00f3\u00fa\u00c1\u00c9\u00cd\u00d3\u00da\u00f1\u00d1\u00FC\u00DC\s]*$ <--- NO FUNCA

Ahora no se si alguno se a topado con esto. Y os agradecería su ayuda.

El código actual que tengo es:

alphanumeric = RegexValidator(r'^[0-9a-zA-Z\s]*$', 'Disculpa debe ser alfanumerico')


Sin mas,




User linux counter: #550195
Huella de clave = E79E B87D 85E7 1D4D C5B1  4F04 1A6A C214 65DC B72A


Ricardo Azpeitia Pimentel

unread,
Feb 6, 2014, 3:59:05 PM2/6/14
to djan...@googlegroups.com
No se porque siempre quieren usar regex para validar X o Y cuando hay incluso funciones mas simples y robustas para hacer ese trabajo.

Por ejemplo las cadenas tienen métodos como isalpha, isalnum, isdigit que funcionan perfectamente con unicode.

Código de ejemplo:
u'áéíóúÁÉÍÓÚaeiou1234567890ñÑüÜ'.isalnum()

Hacer un validador que use este metodo es trivial con la documentación. https://docs.djangoproject.com/en/dev/ref/validators/


--
--
Ha recibido este mensaje porque está suscrito a Grupo "Grupo de Usuarios del Framework Django de habla hispana" de Grupos de Google.
Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a djan...@googlegroups.com
Para anular la suscripción a este grupo, envíe un mensaje a django-es-...@googlegroups.com
Para obtener más opciones, visita este grupo en http://groups.google.com.bo/group/django-es.
---
Has recibido este mensaje porque estás suscrito al grupo "Django-es" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a django-es+...@googlegroups.com.
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

Reply all
Reply to author
Forward
0 new messages