Skip to content
Desarrollo · Text Processing

Tester de Regex

Crea y depura expresiones regulares con resaltado de coincidencias en tiempo real, detalles de grupos de captura, vista previa de sustitución y explicaciones token a token. Funciona completamente en tu navegador — ningún patrón se envía a un servidor.

In-browser only JS · PCRE2 · Python Web Worker safe

Toda la evaluación se realiza en tu navegador — ningún patrón se envía a un servidor.

Guía

Cómo usar

  1. 1
    Elige el motor

    Selecciona JavaScript, PCRE2 o Python re en el selector de la parte superior. Las opciones de bandera se actualizan automáticamente según el motor elegido.

  2. 2
    Escribe un patrón

    Escribe tu patrón regex en el campo entre los delimitadores /. La lista de banderas se actualiza al activarlas. Haz clic en Copiar (⧉) para copiar la cadena /patrón/banderas.

  3. 3
    Prueba con texto

    Escribe o pega tu texto de prueba en el área de texto. Las coincidencias se resaltan en tiempo real con etiquetas numeradas para distinguir múltiples coincidencias.

  4. 4
    Inspecciona los detalles

    Haz clic en cualquier coincidencia del acordeón para ver su posición exacta (desplazamiento inicio–fin) y los valores de los grupos de captura, incluyendo los grupos con nombre.

  5. 5
    Vista previa de sustituciones

    Cambia a la pestaña Sustitución, escribe una cadena de reemplazo y observa el texto sustituido al instante. Usa la sintaxis de retro-referencias ($1, \1 o \g<nombre>) adecuada para tu motor.

  6. 6
    Comprende tu patrón

    Abre la pestaña Explicación para un desglose token a token. Usa la referencia rápida de la pestaña Coincidencia para una referencia de tokens con búsqueda.

Cómo usar

  • Elige un motor: JavaScript, PCRE2 o Python re.
  • Escribe un patrón en el campo / … /.
  • Escribe o pega texto para ver las coincidencias en vivo.
  • Expande una coincidencia para ver los grupos de captura.
  • Usa la pestaña Sustitución para ver una vista previa de los reemplazos.

Referencia

Comparación de características del motor

Comparación de características del motor
MotorGrupos con nombreLookbehindUnicodeModo detalladoRetro-referencias
JavaScriptNo
PCRE2
Python re

Preguntas frecuentes

¿Qué es una expresión regular?
Una expresión regular (regex) es una secuencia de caracteres que define un patrón de búsqueda. Las regex permiten encontrar, extraer y reemplazar texto de forma flexible. Los usos habituales incluyen validación de formularios, análisis de registros y operaciones de búsqueda y reemplazo en código.
¿Cuál es la diferencia entre JavaScript, PCRE2 y Python re?
JavaScript está integrado en el navegador y sigue el estándar ECMAScript. PCRE2 (Perl-Compatible Regular Expressions v2) es el motor que usa PHP, Apache y muchas otras herramientas — admite más funciones como cuantificadores posesivos. Python re es el motor de la biblioteca estándar de Python, con una sintaxis ligeramente diferente para grupos con nombre ((?P<nombre>…)) y retro-referencias.
¿Para qué sirve la bandera g?
La bandera global (g) hace que el motor encuentre todas las coincidencias en el texto en lugar de detenerse tras la primera. Sin g, solo se devuelve la primera coincidencia.
¿Qué es un grupo de captura?
Un grupo de captura es una parte de la regex entre paréntesis (…). El texto que coincide se almacena por separado para poder referenciarlo en los resultados o en una cadena de reemplazo mediante retro-referencias ($1, \1, etc.).
¿Qué es un grupo de captura con nombre?
Un grupo de captura con nombre asigna un nombre a un grupo, haciendo el patrón más legible. En JavaScript y PCRE2 la sintaxis es (?<nombre>…); en Python es (?P<nombre>…). Puedes referenciar el grupo por nombre en los reemplazos ($<nombre> o \g<nombre>).
¿Qué es un ataque ReDoS y cómo se previene aquí?
El ReDoS (Regular Expression Denial of Service) explota patrones regex con retroceso catastrófico para consumir tiempo de CPU excesivo. Esta herramienta ejecuta toda la evaluación en un Web Worker con un tiempo de espera automático de 2 segundos, evitando que se congele el navegador.
¿Qué es la sustitución en regex?
La sustitución regex reemplaza las coincidencias en el texto por una cadena de reemplazo. Dicha cadena puede referenciar grupos capturados mediante retro-referencias — $1 o \1 para el primer grupo, $<nombre> o \g<nombre> para grupos con nombre.
¿Puedo compartir una regex?
Sí. Haz clic en Compartir para generar un enlace que codifica tu patrón actual, banderas, texto de prueba y motor en el fragmento de URL. El enlace es completamente del lado del cliente — no se envían datos a un servidor. Los patrones largos (más de 50 caracteres) muestran una confirmación antes de ejecutarse.