Las expresiones regulares o REGEX son el dolor de cabeza de muchos desarrolladores sea cual sea el lenguaje de programación en el que trabajen, pues bien para ayudar un poco a revertir esa idea de que las expresiones regulares son difíciles de entender aquí les comparto una serie de ejemplos de Expresiones Regulares.

También les comparto una chuleta o cheat sheet de Expresiones Regulares esta fue creada por Added Bytes y es un excelente recurso para programadores, esta la puedes descargar en formato PNG y PDF.

Enlace: Regular Expressions Cheat sheet v2.0

Ejemplos de expresiones regulares

Correo electrónico

“^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(( [a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$”

Por ejemplo name@gmail.com

URL

“^(ht|f)tp(s?)\:\/\/[0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*(:(0-9)*)*(\/?)( [a-zA-Z0-9\-\.\?\,\’\/\\\+&%\$#_]*)?$”

Por ejemplo  https://www.frogx3.com

Contraseña segura

“(?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{8,10})$”

Entre 8 y 10 caracteres, por lo menos un digito y un alfanumérico, y no puede contener caracteres espaciales

Fecha (EEUU)

“^\d{1,2}\/\d{1,2}\/\d{2,4}$”

Por ejemplo 01/01/2005

Fecha (EEUU)

“^\d{1,2}\/\d{1,2}\/\d{2,4}$”

Por ejemplo 01/01/2005

Moneda

“^(-)?\d+(\.\d\d)?$”

+ o – cantidad, sin ningún símbolo. Si tiene punto decimal, decimal, requiere 2 caracteres numéricos después del punto decimal

Númerotarjeta de crédito

“^((67\d{2})|(4\d{3})|(5[1-5]\d{2})|(6011))(-?\s?\d{4}){3}|(3[4,7])\ d{2}-?\s?\d{6}-?\s?\d{5}$”

Número tarjeta de crédito como Amex, Visa, MasterCard, Discover

Númerotelefono (Francia)

“^0[1-6]{1}(([0-9]{2}){4})|((\s[0-9]{2}){4})|((-[0-9]{2}){4})$”

.

Númerotelefono (España)

“^[0-9]{2,3}-? ?[0-9]{6,7}$”

.

Númerotelefono (EEUU)

“^([1-9]{2}|[0-9][1-9]|[1-9][0-9])[0-9]{3}$”

.

Código postal  (Francia)

“^(F-)?((2[A|B])|[0-9]{2})[0-9]{3}$”

.

Codigo postal  (Italia)

“^(V-|I-)?[0-9]{4}$”

.

Código postal  (Alemania)

“\b((?:0[1-46-9]\d{3})|(?:[1-357-9]\d{4})|(?:[4][0-24-9]\d{3})|(?: [6][013-9]\d{3}))\b”

.

Código postal  (España)

“^([1-9]{2}|[0-9][1-9]|[1-9][0-9])[0-9]{3}$”

.

Código postal  (EEUU)

“^(\d{5}-\d{4}|\d{5}|\d{9})$|^([a-zA-Z]\d[a-zA-Z] \d[a-zA-Z]\d)$”

.

Númeroseguro social (Francia)

“^((\d(\x20)\d{2}(\x20)\d{2}(\x20)\d{2}(\x20)\d{3}(\x20)\d{3} ((\x20)\d{2}|))|(\d\d{2}\d{2}\d{2}\d{3}\d{3}(\d{2}|)))$”

.

Númeroseguro social (EEUU)

“^\d{3}-\d{2}-\d{4}$”

.

Tarjeta de identificación (Francia)

“^([0-9a-zA-Z]{12})$”

Por ejemplo 001234567000

Tarjeta de identificación (Italia)

“^([0-9a-zA-Z]{12})$”

Por ejemplo AA 1234567

Número pasaporte (Francia)

“^([a-zA-Z]{2})\s([0-9]{7})$”

Por ejemplo 123456789

IBAN (Alemania)

“DE\d{2}[ ]\d{4}[ ]\d{4}[ ]\d{4}[ ]\d{4}[ ]\d{2}|DE\d{20}”

.

IBAN (España)

“ES\d{2}[ ]\d{4}[ ]\d{4}[ ]\d{4}[ ]\d{4}[ ]\d{4}|ES\d{22}”

.

Certificado de Identificación Fiscal (Italia)

“^[A-Za-z]{6}[0-9]{2}[A-Za-z]{1}[0-9]{2}[A-Za-z]{1}[0-9]{3} [A-Za-z]{1}$”

.

Certificado de Identificación Fiscal (España)

“^(X(-|\.)?0?\d{7}(-|\.)?[A-Z]|[A-Z](-|\.)?\d{7}(-|\.)? [0-9A-Z]|\d{8}(-|\.)?[A-Z])$”

.