QuickATools

Herramientas para desarrolladores · Free browser tool

Probador de expresiones regulares

Prueba y depura tus expresiones regulares en tiempo real con resaltado de sintaxis en vivo, capturas de grupos e interruptores de flags.

Regular expression

Pattern between slashes · flags toggle on the right.

g
g Global — find all matchesi Ignore casem Multiline — ^/$ per line
Valid pattern/\b(\w+)@(\w+)\.(\w+)\b/g3 matches

Test string

Paste the text you want to match against.

107 characters

Highlighted matches

Matching regions are marked in amber below.

Contact us at hello@example.com or support@quickatools.com. Also try BAD@EMAIL (no TLD) and alice@site.org.

Match details

3 results
#MatchIndex$1$2$3
1hello@example.com1431helloexamplecom
2support@quickatools.com3558supportquickatoolscom
3alice@site.org92106alicesiteorg

Frequently Asked Questions

¿Qué hacen realmente las flags g, i y m?

La flag g (global) encuentra cada coincidencia en la cadena en lugar de detenerse tras la primera. La flag i (ignore case) hace el patrón insensible a mayúsculas, así que /hello/i coincide con "Hello" y "HELLO". La flag m (multiline) cambia cómo se comportan ^ y $ —con m activada, coinciden con el inicio y el final de cada línea en lugar de solo el inicio y el final de toda la cadena. Actívalas en vivo en esta herramienta para ver la diferencia de inmediato.

¿Cuál es la diferencia entre un match y un capture group?

Un match es la subcadena completa que satisfizo tu patrón. Los capture groups son las piezas de ese match que "guardaste" intencionadamente envolviendo partes del patrón entre paréntesis —por ejemplo, /(\d{4})-(\d{2})-(\d{2})/ coincidiendo con "2026-08-07" produce un match ("2026-08-07") y tres capture groups ($1 = "2026", $2 = "08", $3 = "07"). Los capture groups son lo que usas en reemplazos o al extraer campos estructurados del texto.

¿En qué se diferencia el motor RegExp de JavaScript de otros sabores de regex?

JavaScript usa un sabor basado en ECMAScript, que admite lookarounds, named groups y escapes de propiedades Unicode (con la flag u), pero no admite algunas funciones de PCRE o .NET como patrones recursivos o cuantificadores posesivos. Los patrones que pruebas aquí se comportan exactamente como lo harán en código de navegador o Node.js —así que si un patrón funciona en esta herramienta, funcionará igual en tu aplicación JavaScript.

¿Es seguro probar regexes contra código fuente real o datos sensibles aquí?

Sí. La compilación del patrón, el matching, el resaltado y la generación del informe se ejecutan todos en local con el motor RegExp integrado del navegador: nada de lo que pegas se sube, se registra ni se envía a un servidor. Eso lo hace seguro para depurar patrones de validación de formularios de registro, reglas de parsing de logs o regexes de redacción contra texto de muestra real (incluso sensible) sin exponer ese texto a un servicio de terceros.

Por qué el feedback de regex en vivo supera la depuración de adivinar y recargar

Las expresiones regulares son densas por diseño: un escape faltante, un cuantificador greedy o la flag incorrecta pueden coincidir en silencio con lo equivocado (o con nada). Depurarlas pegando en código de producción y recargando es lento y arriesgado. Un probador en vivo que resalta cada match y muestra cada capture group mientras escribes colapsa ese bucle de feedback a milisegundos, para que veas exactamente qué hacen ^, $ o un grupo anidado antes de que el patrón se despliegue.

Ese feedback también importa para reglas sensibles a la seguridad. Los validadores de formularios de registro, los patrones de redacción de logs y los filtros de contenido a menudo se prueban contra datos de muestra reales —emails, teléfonos o fragmentos de entrada de usuario. Enviar ese texto a un playground de regex de terceros significa confiar su servidor con contenido que quizás no quieras que salga de tu máquina. Esta herramienta nunca sube nada: la compilación del patrón, el matching, el resaltado y el informe de matches pasan todos por el motor RegExp integrado del navegador.

Como el motor es la misma implementación ECMAScript que usan tu navegador y Node.js, un patrón que funciona aquí se comportará igual en tu aplicación JavaScript —incluido cómo las flags g, i y m cambian el matching, y cómo se numeran los capture groups. Usa el panel de resaltado ámbar para detectar matches no deseados, y la tabla de matches para verificar que $1, $2 y compañía extraen los campos que esperas.

¿Necesitas ordenar JSON de muestra antes de probar una regla de parseo? Usa el Formateador y validador de JSON. ¿Decodificar primero un token codificado? Prueba Codificar/decodificar Base64. ¿Generar IDs de fixture para una suite de tests? El Generador de UUID/GUID funciona igual de local que esta herramienta.