Probador de Regex
Prueba expresiones regulares con resaltado en tiempo real, capture groups, modo de reemplazo y presets de patrones comunes.
Referencia rápida
. Any character (except newline)\d Digit [0-9]\D Non-digit\w Word char [A-Za-z0-9_]\W Non-word char\s Whitespace\S Non-whitespace^ Start of string/line$ End of string/line\b Word boundary\B Non-word boundary* 0 or more+ 1 or more? 0 or 1 (optional){n} Exactly n{n,m} Between n and m*? Lazy (non-greedy)(...) Capture group(?:...) Non-capturing group(?<name>...) Named capture group\1 Backreference to group 1a|b Alternation (a or b)(?=...) Positive lookahead(?!...) Negative lookahead(?<=...) Positive lookbehind(?<!...) Negative lookbehindAcerca de esta herramienta
Un probador de regex en tiempo real que resalta las coincidencias, extrae capture groups (con nombre y numerados), soporta buscar y reemplazar con backreferences, y proporciona acceso rápido a patrones comunes usados en desarrollo web y administración de sistemas.
Características
Resaltado en tiempo real — las coincidencias se resaltan con colores alternos mientras escribes
Capture groups — tanto con nombre (
(?<name>...)) como numerados, se muestran con etiquetasModo de reemplazo — prueba sustituciones con backreferences (
$1,$&,$<name>)Flags de regex — alterna global, insensible a mayúsculas, multilínea, dot-all y Unicode
10 presets de patrones — email, URL, IPv4, UUID, teléfono, JWT, dirección MAC, color HEX, fecha ISO y location de Nginx
Estadísticas de coincidencias — recuento, tiempo de ejecución y posición línea:columna para cada coincidencia
Referencia rápida — hoja de referencia de regex desplegable con caracteres, anclas, quantifiers, grupos y lookaround
Cómo usar
- Introduce tu patrón regex en el campo de patrón
- Configura los flags deseados (g, i, m, s, u) usando las casillas
- Escribe o pega tu cadena de prueba en el área de texto
Las coincidencias se resaltan en tiempo real con información detallada debajo
Activa el modo de reemplazo para probar sustituciones — introduce una cadena de reemplazo con backreferences
$1,$&o$<name>Haz clic en cualquier preset para cargar un patrón común con texto de ejemplo
Despliega la referencia rápida de la parte inferior para una hoja de referencia compacta de la sintaxis regex
Flags de regex explicados
Los flags (también llamados modificadores) cambian cómo el motor de regex interpreta tu patrón. En JavaScript se colocan después del delimitador de cierre: /pattern/flags. Esta herramienta te permite alternar cada uno individualmente.
Encuentra todas las coincidencias en la cadena en lugar de detenerse tras la primera. Sin g, solo se devuelve la primera coincidencia. Esencial para contar ocurrencias o realizar un buscar y reemplazar global.
/\d+/g en “a1 b2 c3” → 3 coincidencias ( 1, 2, 3)
Hace que el patrón coincida sin importar mayúsculas o minúsculas. /abc/i coincide con abc, ABC, aBc, etc. Se aplica tanto a caracteres literales como a rangos de caracteres como [a-z].
/error/i coincide con “Error”, “ERROR”, “error”
Cambia el comportamiento de las anclas ^ y $. Normalmente coinciden con el inicio/fin de toda la cadena. Con m, coinciden con el inicio/fin de cada línea (separada por \n). No afecta a . — usa s para eso.
/^server/m coincide con “server” al inicio de cualquier línea, no solo la primera
Hace que el metacarácter . coincida con cualquier carácter incluyendo saltos de línea (\n, \r). Por defecto, . coincide con todo excepto terminadores de línea. Útil para coincidencias en bloques multilínea.
/<div>.*?</div>/s coincide con un div y su contenido incluso si abarca varias líneas
Habilita la coincidencia completa de Unicode. Sin él, los caracteres fuera del Basic Multilingual Plane (emojis, CJK, símbolos matemáticos) pueden tratarse como dos unidades de código separadas. También habilita escapes de propiedades Unicode como \p{Letter} y \p{Emoji}.
/\p{Emoji}/gu coincide correctamente con emojis como 🔥, 👋, 🎉
Combinaciones de flags comunes
gi— Encuentra todas las coincidencias, insensible a mayúsculas. La combinación más habitual para búsqueda de texto.
gm— Encuentra todas las coincidencias en múltiples líneas. Útil para archivos de log y de configuración.
gis— Global, insensible a mayúsculas, dot-all. Para coincidencias en bloques HTML/XML multilínea.
gu— Global con Unicode. Necesario cuando se trabaja con texto internacionalizado o emojis.
gms— Global, multilínea, dot-all. Máxima potencia para analizar contenido estructurado multilínea.
JavaScript frente a otros sabores de regex
Esta herramienta usa el motor nativo RegExp de JavaScript, que sigue la especificación ECMAScript. Algunas diferencias a tener en cuenta al portar patrones a otros entornos:
| Característica | JavaScript | PCRE (grep -P, PHP) | Python re |
|---|---|---|---|
| Grupos con nombre | (?<name>...) | (?P<name>...) or (?<name>...) | (?P<name>...) |
| Lookbehind | Longitud variable (ES2018+) | Solo longitud fija | Solo longitud fija |
| Propiedades Unicode | \p{L} (with u flag) | \p{L} (built-in) | Via regex module |
| Grupos atómicos | No soportado | (?>...) | No soportado |
| Recursión | No soportado | (?R), (?1) | Via regex module |
| Cuantificadores posesivos | No soportado | a++, a*+ | No soportado |
| Retro-referencia en reemplazo | $1, $& | \1, $1 | \1, \g<1> |
Consejos de rendimiento de regex
Evita el backtracking catastrófico — patrones como
(a+)+bpueden hacer que el motor se bloquee con cadenas largas que no coinciden. Usa construcciones tipo atomic o reescribe comoa+b.Sé específico con los quantifiers — prefiere
[^"]*sobre.*?cuando busques coincidencias entre delimitadores. La character class negada es más rápida porque no necesita backtracking.Ancla cuando sea posible — si sabes que la coincidencia empieza al principio de una línea, usa
^para que el motor descarte posiciones rápidamente.Usa non-capturing groups — escribe
(?:…)en lugar de(…)cuando no necesites el valor capturado. Evita reservar memoria para el grupo.Monitoriza el tiempo de ejecución — esta herramienta muestra el tiempo de coincidencia para cada prueba. Si un patrón tarda más de unos milisegundos, considera simplificarlo.
Privacidad
Todo el análisis de patrones y procesamiento de texto se realiza íntegramente en tu navegador utilizando el motor RegExp nativo de JavaScript. Ningún dato se transmite a ningún servidor — tus patrones y cadenas de prueba nunca salen de tu dispositivo.
Referencia de comandos Linux
Las expresiones regulares están profundamente integradas en la línea de comandos de Linux. A continuación se muestran herramientas comunes con sus capacidades de regex.
grep — Buscar líneas con un patrón
grep -oP — Extraer solo coincidencias
sed — Buscar y reemplazar
awk — Procesamiento basado en patrones
find — Buscar archivos por nombre con regex
Relacionado
Consulta los patrones regex usados en
Implementar Content Security Policy con Nginx
para ejemplos reales de validación de CSP, o prueba el analizador de cabeceras HTTP para inspeccionar cabeceras de seguridad validadas con regex.