Desarrolladores
Tester de regex
Tus expresiones regulares probadas en vivo: coincidencias resaltadas, grupos desglosados.
| # | Coincidencias | Grupos de captura |
|---|
Escribir una expresión regular correcta a la primera, sin probarla, es una apuesta. Este tester te da respuesta inmediata: introduce tu patrón, tus flags y un texto de muestra — cada coincidencia se resalta mientras escribes, y los grupos capturados se listan uno a uno con su contenido. ¿Un paréntesis sin cerrar o un cuantificador inválido? El error de sintaxis se muestra con claridad en lugar de fallar en silencio. El motor es el de tu propio navegador, es decir, la sintaxis JavaScript estándar: lo que valides aquí funcionará tal cual en tu código front o de Node.js. Gratis, sin registro, y tus datos de prueba nunca salen de tu equipo — pega muestras reales con confianza.
¿Cómo funciona?
- Introduce el patrón de tu expresión regular y sus flags (g, i, m…).
- Pega una muestra representativa en la zona de texto de prueba.
- Observa cómo se iluminan las coincidencias y se listan los grupos de captura.
- Ajusta el patrón hasta que se comporte como quieres y cópialo a tu código.
Preguntas frecuentes
¿Por qué mi regex no encuentra ninguna coincidencia?
Revisa primero los clásicos: un carácter especial sin escapar (el punto coincide con todo; «\.» coincide con un punto literal), un flag ausente (sin «i» la mayúscula importa; sin «m», ^ y $ solo valen para el texto completo) o un patrón demasiado voraz — «.*» suele tragar más de la cuenta; prefiere «.*?» o una clase de caracteres negada.
¿Qué hacen los flags g, i y m?
«g» (global) encuentra todas las coincidencias en lugar de pararse en la primera; «i» ignora mayúsculas y minúsculas; «m» (multiline) hace que ^ y $ coincidan con el inicio y el final de cada línea en vez del texto entero. Hay más: «s» permite que el punto coincida con saltos de línea; «u» activa el soporte Unicode completo.
¿Cómo extraigo una parte concreta de la coincidencia?
Con grupos de captura: envuelve entre paréntesis la parte que quieres y aparecerá aquí en la lista de grupos. Los grupos con nombre «(?<nombre>…)» hacen tu código más legible; los grupos sin captura «(?:…)» permiten agrupar sin capturar y mantienen limpio el resultado.
¿Mi regex funcionará también en PHP o Python?
El núcleo de la sintaxis es común, pero cada motor tiene sus peculiaridades: el soporte de lookbehind y las clases Unicode difieren, PHP (PCRE) exige delimitadores y Python usa re.MULTILINE en lugar de flags inline. Este tester valida sintaxis JavaScript — vuelve a probar en el lenguaje de destino si dependes de funciones avanzadas.