Regex

📘 Expresiones Regulares (Regex)

Las expresiones regulares (o regex) son secuencias de caracteres especiales que definen patrones de búsqueda en texto.


🧠 ¿Para qué sirven las regex?

  • Buscar patrones en cadenas de texto (emails, teléfonos, fechas…)
  • Validar formularios
  • Reemplazar partes de texto
  • Extraer datos estructurados

🔤 Símbolos básicos

Símbolo Significado Ejemplo
. Cualquier carácter (menos salto) a.cabc
^ Inicio de línea ^Hola
$ Fin de línea fin$
* 0 o más repeticiones ba*b, baaa
+ 1 o más repeticiones ba+ba, baaaa
? 0 o 1 repetición colou?rcolor, colour
\ Escapa caracteres especiales \..

📦 Agrupadores

Símbolo Significado
[] Conjunto de caracteres
[^] Conjunto negado
( ) Agrupar y capturar
{n,m} Repeticiones entre n y m
| Alternancia

Ejemplo: a(b|c)d encuentra abd o acd.


🔍 Ejemplos prácticos

Validar email:

^[\w.-]+@[\w.-]+\.\w+$

Validar número de teléfono español:

^\+34\s?[6-7]\d{8}$

Validar fecha en formato dd/mm/yyyy:

^\d{2}/\d{2}/\d{4}$

Buscar palabras que empiecen por “re”

\bre\w+

🛠️ Herramientas para probar Regex


🧪 Ejercicio de prueba

  1. Extrae todos los números de este texto: Mi número es 654-321-987 y tengo 2 perros.
  2. Encuentra todas las palabras que terminan en “ar”.
  3. Valida una matrícula española tipo 1234 ABC.

✅ Buenas prácticas

  • No abuses de las regex: pueden ser difíciles de mantener.
  • Usa comentarios si tu lenguaje lo permite (x flag en Python).
  • Testea siempre con ejemplos reales.

📚 Recursos extra

  • MDN Regex
  • RegExr
  • Libro recomendado: “Mastering Regular Expressions” - Jeffrey Friedl