.*
Developer/Regex Tester

Regex Tester

Test regular expressions with live match highlighting and group capture.

LIVE MATCHLive highlightCapture groupsAll flagsError display
Saved Patterns· Auto-save on
▾
Pattern
//
Test Text
Highlighted Preview
The Quick Brown Fox Jumps Over The Lazy Dog
Matches (9)
"The" @ index 0
"Quick" @ index 4
"Brown" @ index 10
"Fox" @ index 16
"Jumps" @ index 20
"Over" @ index 26
"The" @ index 31
"Lazy" @ index 35
"Dog" @ index 40
Data Source & Legal Disclaimer
Effective: 2026
Sources: Browser-side processing (no external API)

This tool runs 100% in your browser. All computation happens locally on your device — your input is never uploaded to any server. Results are for reference only.

See all data sources & update policy →
Cómo funcionaPage 2

How a pattern walks through your text — illustrated

A regular expression is a tiny state machine: the engine starts at the left, tries to match the pattern, and on success records a match then resumes just after it. Flags change the walk — g keeps scanning, i relaxes case, m re-anchors ^/$ to each line. Capturing groups (…) store sub-parts so you can pull out just the fraction of each hit.

Match → advance → repeat
A1B22C333← cursor never goes backMatch 1 → “1” at index 1Match 2 → “22” at index 3Match 3 → “333” at index 6With /g it records all three. Without it, only “1”.

Pattern /\d+/g against the string 'A1B22C333': the engine finds 1, resumes after it, finds 22, resumes, finds 333. Without the /g flag it stops after the first hit.

From vague to precise — three patterns

Same sandwich description, three extraction goals.

  1. Goal: any digits:/d+/g → catches 12 and 34 in “Order #12 · qty 34”
  2. Goal: a price:/\$\d+\.\d{2}/ → matches “9.99” and “19.50” only when dollar-prefixed
  3. Goal: an email-like id:/[a-z]+\d+/gi → case-insensitive run of letters then digits
  4. Trap to watch:Metacharacters must be escaped — a literal “.” needs \., or it matches any character
FAQ y detallesPage 3

Test regular expressions with match highlighting, capture group display, and all standard flags. Everything runs locally; nothing is uploaded.

FreeToolHub Regex Tester & Highlighter is a free browser-based tool — test regular expressions with match highlighting, capture group display, and all standard flags. No signup, no upload; everything runs locally in your browser.

Sobre esta herramienta

¿Qué es esta herramienta?

Prueba y depura tus expresiones regulares en tiempo real, con resaltado de coincidencias y referencia rápida. Gratis y sin registro.

Live highlightCapture groupsAll flagsError display

¿Qué es el probador de expresiones regulares?

Este probador es un banco de trabajo en vivo para expresiones regulares: escribe un patrón y un texto de ejemplo, y cada coincidencia se resalta sobre la marcha mientras escribes. Más allá de las coincidencias, expone la maquinaria que los desarrolladores necesitan de verdad para depurar patrones: grupos de captura numerados con sus valores extraídos, todas las banderas estándar —global, sin distinguir mayúsculas, multilínea y dotall— y errores claros cuando el patrón no compila. Los grupos con nombre se muestran con su etiqueta, y el contador de coincidencias se actualiza en vivo, de modo que puedes ajustar un patrón contra datos reales en lugar de adivinar si funciona.

¿Quién debería usar esta herramienta?

Los desarrolladores que construyen reglas de validación para formularios y APIs confirman que un patrón acepta todas las entradas válidas y rechaza las inválidas antes de subirlo a producción. Los ingenieros de datos que escriben patrones de extracción para registros y texto se llevan los grupos de captura que han nombrado directamente del panel. Quien mantiene expresiones regulares antiguas —a menudo el código más temido de un repositorio— las pega aquí con una entrada representativa para entender qué coincide realmente antes de tocarlo. Y los ingenieros de QA construyen cadenas de casos límite que exponen errores de codicia frente a pereza y de anclaje antes de que lo haga producción.

¿Cómo funciona?

(1) Introduce tu patrón; los errores de compilación aparecen de inmediato con pistas de posición. (2) Activa las banderas: g para todas las coincidencias, i para ignorar mayúsculas, m para que ^ y $ se apliquen en cada línea, s para que el punto coincida con los saltos de línea, además de u e y. (3) Pega el texto de ejemplo en el área del sujeto; las coincidencias se resaltan en vivo y el contador se actualiza. (4) Inspecciona los resultados: cada coincidencia con su índice, y cada grupo de captura —numerado y con nombre— con el texto extraído y una comprobación rápida de nulo para los grupos opcionales que no participaron. Los patrones y el texto permanecen locales en tu navegador.

¿Cuáles son los errores de regex más comunes?

Cinco patrones de fallo explican la mayoría de los errores de regex. Cuantificadores codiciosos que se tragan demasiado: .* en <.*> consume hasta el último > de la línea; cambia a la versión perezosa .*? o usa clases negadas como [^>]*. Caracteres especiales sin escapar: un punto literal debe ser \. o coincide con cualquier carácter, la fuga clásica en la validación de correos. Anclajes que faltan: ^\d{4} sin ^ coincide con los últimos cuatro dígitos en cualquier sitio; decide si quieres coincidencia de subcadena. Backtracking catastrófico: cuantificadores anidados como (a+)+ contra una entrada larga que no coincide deja colgados los motores; desenrolla el patrón o añade comportamiento posesivo tipo atómico donde esté soportado. Y deriva entre plataformas: lookbehind, grupos con nombre y escapes de propiedades Unicode varían entre motores, así que prueba contra la variante que realmente usas. Este probador usa la variante de JavaScript, que coincide exactamente con los entornos de navegador y Node.

Preguntas frecuentes

¿Qué variante de regex usa este probador?

El motor RegExp nativo de JavaScript (ECMAScript): el mismo que corre en todos los navegadores y en Node.js. Construcciones como lookahead (?=...), grupos sin captura (?:...), grupos con nombre (?<name>...) y escapes unicode funcionan tal como lo harían en código JavaScript de producción.

¿Por qué mi patrón funciona en otra herramienta y aquí no?

Por diferencias de variante. PCRE (PHP, grep) y el módulo re de Python admiten variantes de lookbehind, retrorreferencias en el patrón y banderas que JavaScript no tiene, y al revés también hay detalles que difieren. Si un patrón funciona en PCRE pero no aquí, busca construcciones fuera del conjunto de ECMAScript; en la dirección contraria lo habitual son los grupos con nombre propios de JS o la bandera s.

¿Qué cambian realmente las banderas g, i, m, s y u?

g encuentra todas las coincidencias en lugar de parar en la primera; i hace que la comparación ignore mayúsculas; m hace que ^ y $ coincidan al principio y al final de cada línea en lugar de los bordes de la cadena; s permite que el punto coincida con saltos de línea; y u activa el tratamiento unicode completo (imprescindible para emojis y textos no latinos). Combinar g con el resaltado muestra todas las apariciones, que es como esta herramienta lista los resultados.

¿Cómo hago coincidir texto que abarca varias líneas?

Hay dos banderas que trabajan juntas: m hace que los anclajes (^, $) caigan en los bordes de cada línea, y s hace que el punto cruce los saltos de línea. Para patrones como «inicio de una línea concreta», usa ^tuTexto con m activada. Para frases de varias líneas, activa s o sustituye los espacios de tu patrón por [\s\S] o \s+.

Which regex flags and engine does this tool support?

It uses the JavaScript RegExp engine with all standard flags: g (global), i (case-insensitive), m (multiline), s (dotall), u (unicode), and y (sticky). Live match highlighting shows all matches simultaneously. Capture groups are displayed in a numbered list below the match results for easy debugging.

Can I test regex patterns against multiline text?

Yes. Enable the m flag for multiline mode (^ and $ match line boundaries) or the s flag for dotall mode (. matches newlines). This is essential for parsing log files, extracting data from structured text, and validating multiline form input. All processing is 100% in-browser.

Herramientas relacionadas

Compartir:𝕏inf⬆
Joke of the Day
Oct 22

What do you call a really smart cookie?

Free core, no account

Keep the Free Edition Free

No signups, no data sold. Every tool is free to use — the free tier allows 5 downloads or saves per day, and the optional Pro plan ($7/mo, $59/yr) adds unlimited downloads, batch processing, white-label exports and an ad-free experience.

☕Support me on Ko-fi— support the free tier

100% of proceeds go towards hosting & building more free tools.