¿Qué es una expresión regular?
Es una secuencia de caracteres que permite definir qué formato o patrón deben cumplir las respuestas dadas en una pregunta abierta o de campo libre para ser consideradas válidas. Son utilizadas a menudo en las encuestas a fin de asegurar que los datos recogidos tienen un formato adecuado. Por ejemplo, si estamos recogiendo en la encuesta números de teléfono, podemos configurar en esta pregunta una validación mediante una expresión regular; al hacerlo de esta manera, los números de teléfono introducidos por los encuestados deberán ajustarse al formato XXXXXXXXX, es decir, deberán tener 9 dígitos (si lo que nos interesa recoger son teléfonos de España). Si un respondente introdujera una respuesta que no cumpliera con este patrón, le aparecerá un mensaje indicándole que deber responder con el formato apropiado, y el sistema no le dejará continuar ni finalizar la encuesta hasta que introduzca una respuesta válida.
¿Cuándo se utiliza este tipo de validación?
En ocasiones, necesitamos establecer en una pregunta abierta o de campo libre unas condiciones de validación muy específicas que no están entre las opciones predeterminadas ( leer aquí sobre las opciones predeterminadas). Para estos casos, la aplicación da libertad a los usuarios para crear sus propias condiciones de validación personalizadas. Una de las maneras de establecer estas condiciones es usando expresiones regulares.
Caso práctico.
- Tenemos una encuesta con una pregunta de respuesta abierta, en la cual solicitamos al encuestado que introduzca su código postal.
- En España, los códigos postales tienen 5 dígitos; queremos asegurarnos de que las respuestas que introduzcan cumplan con esta condición a fin de obtener sólo códigos postales válidos.
¿Cómo hacerlo?
a) Creamos nuestra pregunta de respuesta abierta: "Indique su código postal".
b) En la ventana de creación de la pregunta, nos situamos en la pestaña Opciones básicas y activamos la casilla Validación de respuestas introducidas.
d) Seleccionamos la opción Expresión regular.
e) Nos aparecerá una caja de texto. Aquí debemos introducir la expresión regular para la validación que queremos aplicar. En nuestro caso concreto, queremos que la respuesta conste de exactamente 5 dígitos, así que la expresión regular que necesitaremos será la siguiente: ^\d{5}$
f) Guardamos
¿Cómo creo la expresión regular que necesito?
A continuación facilitamos un listado con las expresiones que pueden resultar más útiles:
- Código postal (para España, de 5 dígitos): ^\d{5}$
- Documento de identificación (en España, DNI o NIE): ^[\w\d]\d{7}\w$
- Número de teléfono (para España, de 9 dígitos: ^\d{9}$
- Sólo correos electrónicos de Gmail: [^ ]*@gmail\.com$
- Sólo los números 30, 31 o 32: ^30$|^31$|^32$
- Sólo letras, número y espacios (sin caracteres especiales): ^[a-zA-Z0-9]+$
- Limitar número de caracteres (mínimo de 1 y máximo de 10): ^[\s\S]{1,10}$
- Números con dos decimales, en caso de desear separar decimales con coma sustituir el punto de la fómula: ^-?\d*\.\d{2}$
- Porcentaje del 0 al 100 con dos decimales opcionales y el signo % al final opcional: ^-?[0-9]{0,2}(\,[0-9]{1,2})?%?$|^-?(100)(\,[0]{1,2})?%?$
Si la validación que necesitamos no está incluida en esta lista, podemos escribir nuestra propia expresión regular. En los siguientes enlaces el usuario puede consultar información de utilidad para construir sus expresiones regulares:
- Tutorial (español) : http://bit.ly/expresiones_regulares
- Guía expresiones regulares (inglés): http://bit.ly/regex_guide
- Herramienta para probar expresiones regulares (inglés): http://www.freeformatter.com/regex-tester.html
Comentarios
0 comentarios
El artículo está cerrado para comentarios.