Saltar al contenido
Aback Tools Logo

Visualizador de regex

Transforma expresiones regulares en diagramas de ferrocarril interactivos, explora el desglose del AST y prueba coincidencias en vivo: 100% gratis y en el lado del cliente.

Regex Visualizer

Type any regular expression to see its railroad diagram, AST breakdown, and live match highlighting - entirely in your browser with no data sent to any server.

/
/
Flags:
start ^year (1){4}\d"-"month (2){2}\d"-"day (3){2}\dend $

Quick Reference

.Any char (except \n)
\dDigit [0-9]
\wWord char [a-zA-Z0-9_]
\sWhitespace
^Start of string/line
$End of string/line
\bWord boundary
(…)Capturing group
(?:…)Non-capturing group
(?<n>…)Named group
(?=…)Positive lookahead
(?!…)Negative lookahead
*Zero or more (greedy)
+One or more (greedy)
?Zero or one
{n,m}Between n and m times
|Alternation (OR)
[…]Character class
[^…]Negated class
\1Back-reference

Características

  • Diagrama de ferrocarril interactivo: Ve tu expresión regular representada como un diagrama de ferrocarril/sintaxis profesional en tiempo real. Cada token (literales, grupos, cuantificadores, alternancias y lookaheads) se muestra como un carril visual navegable.
  • Desglose del AST con árbol de tokens: Explora un árbol de sintaxis abstracta plegable que muestra cada nodo analizado (secuencias, alternancias, grupos con nombre, cuantificadores, retroreferencias) con descripciones legibles para localizar con exactitud qué hace cada parte de tu regex.
  • Pruebas de coincidencia en vivo con resaltado: Pega una cadena de prueba y observa cómo se resaltan las coincidencias al instante. Una tabla de grupos de captura muestra cada coincidencia con sus valores de grupo numerados y con nombre, lo que te ayuda a verificar la corrección antes de llevar el patrón a producción.
  • 100% gratis, sin registro y sin servidor: Todo el análisis, la generación de diagramas y la evaluación de coincidencias se ejecutan directamente en tu navegador con el motor de regex nativo de JavaScript. Ningún dato sale de tu dispositivo, lo que hace la herramienta segura para patrones sensibles como reglas de autenticación o validadores de datos personales.

Casos de uso

  • Depuración de patrones: Detecta al instante grupos mal emparejados, trampas de cuantificadores codiciosos y problemas de orden de alternancia sin ejecutar código, simplemente inspeccionando el diagrama visual.
  • Revisiones de código: Comparte un enlace a una regex visualizada durante las revisiones de pull requests para que los revisores verifiquen la intención sin analizar mentalmente secuencias de escape sin procesar.
  • Auditoría de seguridad: Audita patrones de validación de entrada en busca de riesgos de retroceso catastrófico (ReDoS). El árbol AST hace visibles de inmediato los cuantificadores anidados y las alternancias ambiguas.
  • Aprender expresiones regulares: Los principiantes pueden escribir patrones simples e ir añadiendo funciones progresivamente, viendo exactamente cómo cada clase de caracteres, cuantificador o grupo afecta al diagrama.
  • Generación de documentación: Exporta o captura diagramas de ferrocarril para documentación de API, wikis o artículos técnicos y explica lógica de validación compleja sin largos textos.
  • Pruebas multiplataforma: Prueba el comportamiento de un patrón con varias cadenas de ejemplo a la vez y verifica la extracción de grupos de captura con nombre usada en enrutamiento de URL, analizadores de logs o separadores de CSV.

Cómo funciona el diagrama de ferrocarril

Un diagrama de ferrocarril (o de sintaxis) visualiza una gramática formal como un conjunto de vías. El patrón se lee de izquierda a derecha: cada token es una caja etiquetada conectada por líneas. Cuando hay una opción (alternancia con | ), las vías se separan verticalmente y se vuelven a unir tras las alternativas. Cuando un token es opcional o repetido, se dibuja un arco de bucle sobre el elemento para indicar el cuantificador. Esto coincide con el modelo mental que usan la mayoría de los desarrolladores al razonar sobre una regex: de izquierda a derecha, con ramas para la elección y bucles para la repetición.

Desglose del AST

Junto al diagrama, la pestaña de desglose del AST muestra el árbol de sintaxis abstracta completo analizado a partir de tu patrón. Cada nodo tiene un tipo (secuencia, alternancia, grupo, cuantificador, literal, clase de caracteres, escape, ancla, retroreferencia) y una descripción legible. El árbol es totalmente plegable, así puedes centrarte en subpatrones concretos sin perder el contexto.

Pruebas de coincidencia en vivo

La pestaña «Probar y coincidir» te permite pegar una entrada de ejemplo y ver al instante qué partes de la cadena coinciden con tu patrón. Las coincidencias se resaltan en línea y una tabla de grupos de captura muestra cada grupo numerado y con nombre extraído de cada coincidencia, los mismos datos que recibe tu código de aplicación al llamar a String.prototype.matchAll() o RegExp.prototype.exec() .

Sintaxis admitida

El visualizador admite todo el conjunto de funciones de regex de ECMAScript, incluidas clases de caracteres ( [a-z] , [^0-9] ), escapes abreviados ( \d , \w , \s ), anclas ( ^ , $ , \b ), grupos de captura y sin captura, grupos con nombre mediante , lookaheads ( (?=…) , (?!…) ), lookbehinds ( (?<=…) , (?<!…) ), retroreferencias ( \1 , \k<nombre> ) y todos los cuantificadores, incluidas las variantes perezosas ( *? , +? , ?? ).

Preguntas frecuentes

Un diagrama de ferrocarril (o de sintaxis) visualiza una regex como una red de vías que se lee de izquierda a derecha. Las opciones (alternancias) se bifurcan en carriles paralelos y se vuelven a unir. Los elementos repetidos (cuantificadores) muestran un arco de bucle sobre la caja. La visualización refleja directamente cómo el motor de regex recorre el patrón.

Todo se ejecuta por completo en tu navegador. El analizador es TypeScript puro, el diagrama se renderiza como SVG con React y el motor de coincidencias es el RegExp nativo de JavaScript. No se envían datos a ningún servidor, así que la herramienta es segura para patrones sensibles.

El visualizador admite toda la gramática de regex de ECMAScript: clases de caracteres, escapes abreviados (\d, \w, \s), anclas, grupos (de captura, sin captura, con nombre), lookaheads, lookbehinds, retroreferencias y todos los cuantificadores, incluidas las variantes perezosas. Los patrones pueden introducirse como texto plano o en notación /patrón/flags.

Cambia a la pestaña «Probar y coincidir» y pega tu entrada de ejemplo en el área de texto. Las coincidencias se resaltan en línea en tiempo real. Una tabla debajo muestra cada coincidencia con sus valores de grupos de captura numerados y con nombre, exactamente lo que recibe tu aplicación al llamar a exec() o matchAll().

La pestaña del árbol de sintaxis abstracta (AST) muestra un árbol plegable con cada nodo analizado: secuencia, alternancia, grupo, cuantificador, literal, clase de caracteres, escape, ancla y retroreferencia, con una descripción en lenguaje sencillo de cada nodo.

Sí, en parte. El árbol AST hace visibles de inmediato los cuantificadores anidados y las alternancias ambiguas, las dos causas más comunes de retroceso catastrófico (ReDoS). Detectar patrones como (?:a+)+ en el diagrama ayuda a identificar el peligro antes de que llegue a producción.

Los flags modifican cómo el motor evalúa el patrón. La herramienta admite: g (global: encontrar todas las coincidencias), i (sin distinción de mayúsculas), m (multilínea: ^ y $ coinciden con los límites de línea) y s (dot-all: . coincide con saltos de línea). Activa los flags con los botones junto a la entrada o inclúyelos en la notación /patrón/flags.