Saltar al contenido

Probar expresiones regulares — Regex tester JavaScript

Prueba regex de JavaScript online: coincidencias resaltadas al instante, grupos de captura y con nombre, todos los flags y vista previa de reemplazo.

Conversión en tu navegador · Sin registro

//g
Flags
Chuleta
.
Cualquier carácter salvo un salto de línea (usa el flag s para incluirlos)
\d \w \s
Dígito, carácter de palabra [A-Za-z0-9_], espacio en blanco
\D \W \S
No dígito, no carácter de palabra, no espacio en blanco
[abc] [^abc]
Uno de a, b, c / cualquier carácter salvo a, b, c
[a-z]
Cualquier carácter de la a a la z
^ $
Inicio / fin de la entrada (de cada línea con el flag m)
\b
Límite de palabra
* + ?
0 o más, 1 o más, 0 o 1
{2,5}
Entre 2 y 5 veces ({3} exactamente, {2,} como mínimo)
*? +?
Versiones perezosas: coinciden con lo mínimo posible
(abc)
Grupo de captura
(?<name>abc)
Grupo de captura con nombre
(?:abc)
Grupo sin captura
\1 \k<name>
Repite lo que capturó el grupo 1 / el grupo con nombre
a|b
a o b
(?=a) (?!a)
Seguido de a / no seguido de a
(?<=a) (?<!a)
Precedido de a / no precedido de a
\p{L}
Cualquier letra de cualquier idioma (requiere el flag u o v)

Usa el motor de regex de JavaScript (ECMAScript) de tu navegador, así que los resultados coinciden con el código JavaScript. Otros motores como PCRE, Python o Java difieren en parte de la sintaxis. La búsqueda se ejecuta en un proceso en segundo plano y se detiene tras 1 segundo para proteger la página del backtracking catastrófico.

Cómo usarla

  1. Escribe una expresión regular y marca los flags que necesites (g encuentra todas las coincidencias).
  2. Pega el texto de prueba; las coincidencias se resaltan y se listan con su índice y sus grupos de captura.
  3. Activa Reemplazar para ver el resultado de String.replace con referencias $1 o $<name>.

Ejemplo

Patrón: (?<user>\w+)@(\w+)\.com  flags: g
Texto: [email protected], [email protected]
Coincidencias: [email protected] (user = alice, 2 = example), [email protected]
Reemplazar con $<user> at $2 → alice at example, bob at test

Detalles y limitaciones

Los patrones se ejecutan con el motor RegExp de JavaScript integrado en tu navegador, así que lookbehind, grupos con nombre, escapes de propiedades Unicode y el flag d se comportan exactamente igual que en tu código. El flag v solo aparece si tu navegador lo admite.

La búsqueda se hace en un Web Worker en tu dispositivo; no se sube nada. Cada ejecución se detiene tras 1 segundo aproximadamente y se listan como máximo 1000 coincidencias.

FAQ

¿Por qué mi regex solo encuentra una coincidencia?

En JavaScript, una regex sin el flag g (global) se detiene en la primera coincidencia. Marca g para encontrarlas todas; este probador las listará todas.

¿Qué es el backtracking catastrófico?

Algunos patrones, como (a+)+$ o (.*)*, pueden tardar un tiempo exponencial con textos que casi coinciden. Esta herramienta ejecuta la regex en un worker aparte y la detiene tras 1 segundo, así que la página sigue respondiendo y muestra un error.

¿Una regex probada aquí funcionará en Python o PHP?

A menudo sí, pero no siempre. Este probador usa el motor de JavaScript. Python, PHP (PCRE) y Java tienen funciones y sintaxis distintas para cosas como los grupos con nombre, el lookbehind y los flags, así que revisa los patrones que dependan de ellas.

Referencias de formatos

Página de la herramienta actualizada: