regex-ejemplos-practicos

Ejemplos de expresiones regulares

Básicos

Detectar palabras en mayúsculas

Busca palabras formadas solo por letras mayúsculas.

Coincide: "HELLO", "WORLD"

No coincide: "hello", "World"

Detectar números decimales

Busca números enteros o decimales con o sin signo.

Coincide: "3.14", "-100", "+0.5"

No coincide: "abc", "123."

Detectar fechas en formato

Detecta fechas con separadores / o -

Coincide: "23/09/2023", "15-01-2022"

No coincide: "2022-09-23"

Networking

Detectar URLs

Busca protocolos HTTP/HTTPS seguidos de un dominio.

Coincide: "http://www.example.com", "https://sub.domain.com/path"

No coincide: "www.example.com", "http//example"

Validar una dirección IPv4

Encuentra direcciones con cuatro bloques numéricos entre 0 y 255.

Coincide: "192.168.0.1", "255.255.255.0"

No coincide: "999.999.999.999", "123.456.789.0"

Validar una dirección IPv6

Busca direcciones con 8 grupos de 4 caracteres hexadecimales.

Coincide: "2001:0db8:85a3:0000:0000:8a2e:0370:7334"

No coincide: "1234:5678:90ab", "2001:::7334"

Ficheros

Detectar nombres de archivos con extensiones específicas:

Busca nombres de archivo con extensiones como .pdf, .jpg, etc.

Coincide: "document.pdf", "image.jpg"

No coincide: "documenttxt", "image.docx"

Validaciones formularios

Detectar nombres de usuario

Permite nombres de usuario entre 3 y 16 caracteres que incluyan letras, números y guiones bajos.

Coincide: "Luis", "Pablo_92"

No coincide: "ac", "elcastigadordelasregularexpressions"

Detectar contraseñas seguras

Busca contraseñas con al menos 8 caracteres, que incluyan mayúsculas, minúsculas, números y símbolos.

Coincide: "Password1!", "A1b2C3$"

No coincide: "password", "12345678"

Detectar direcciones de email

Identifica un nombre de usuario seguido de @, un dominio y una extensión.

Coincide: "test@example.com", "user.name123@domain.co"

No coincide: "test@domain", "user@@domain.com"

Detectar números de teléfono

Busca un prefijo opcional de país seguido de un número de teléfono con espacios o guiones opcionales.

Coincide: "+1-800-555-1234", "0044 20 7946 0958"

No coincide: "123456", "phone: +44 20"

Detectar una tarjeta de crédito

Coincide: "4111111111111111", "5500000000000004"

No coincide: "1234567890123456", "6011000000000004"

Markdown

Detectar enlaces en Markdown

Encuentra enlaces donde el texto está entre corchetes y la URL entre paréntesis.

Coincide: "[LuisLlamas](https://luisllamas.es)"

No coincide: "[LuisLlamas.es](luisllamas.es)", "(https://luisllamas.es)"

Capturar imágenes en formato Markdown

Busca el patrón de una imagen con descripción y URL de la imagen.

Coincide: "![Alt text](https://www.luisllamas.es/img/regex-icon.svg)"