Herramientas para Desarrolladores

Probador de Regex

Prueba expresiones regulares de JavaScript en vivo: coincidencias resaltadas, inspección de grupos de captura, las seis banderas, biblioteca de patrones, vista previa de buscar y reemplazar y fragmento de código copiable, todo en tu navegador.

//g
Banderas

Coincidencias resaltadas (3 coincidencias)

Contact ada@example.com or help+regexkit@mail.co.uk for support.
Orders go to sales@shop-example.org, but not to not-an-email@.

Detalle de coincidencias

#CoincidenciaÍndiceGrupos de capturaGrupos con nombre
1ada@example.com81: "ada", 2: "example.com"ninguno
2regexkit@mail.co.uk321: "regexkit", 2: "mail.co.uk"ninguno
3sales@shop-example.org781: "sales", 2: "shop-example.org"ninguno

Sustitución (buscar y reemplazar)

El reemplazo usa tus banderas tal como las escribiste: sin g, solo se reemplaza la primera coincidencia, igual que String.replace en JavaScript.

Contact ada at example.com or help+regexkit at mail.co.uk for support.
Orders go to sales at shop-example.org, but not to not-an-email@.

Patrones comunes

Elige uno para cargarlo en el campo del patrón.

Úsalo en código

const re = /(\w+)@([\w.-]+\.[a-z]{2,})/g;
const matches = [...text.matchAll(re)];
// matches[i][0] = full match, matches[i][1..] = capture groups

El fragmento usa matchAll, así que lista cada coincidencia con sus grupos de captura.

Privacidad: la comparación corre localmente en tu navegador con el motor RegExp de JavaScript. Tu patrón y tu texto nunca se suben, guardan ni registran.

Más herramientas para desarrolladores: Formateador JSON, Codificador Base64, Generador de UUID, Comparador de Textos

Cómo funciona esta calculadora

Una expresión regular, o regex, es un patrón compacto que describe un conjunto de cadenas: \d+ significa uno o más dígitos, \w+@ significa uno o más caracteres de palabra seguidos de un arroba, y ^ ancla una coincidencia al inicio de una línea. Los desarrolladores usan regex para validar formularios, extraer correos de un texto, reescribir líneas de registro y renombrar archivos en lote. El problema es que un patrón que parece correcto a menudo coincide con lo incorrecto, o con nada, y la única forma de saberlo es ejecutarlo contra texto real. Eso es lo que hace un probador de regex: escribes el patrón, pegas el texto y cada coincidencia se ilumina al instante.

Ejemplo concreto: carga el ejemplo y el patrón (\w+)@([\w.-]+\.[a-z]{2,}) corre contra un párrafo de contactos. Encuentra tres direcciones de correo, ada@example.com, regexkit@mail.co.uk y sales@shop-example.org, mientras ignora correctamente not-an-email@, que no tiene dominio. La tabla de coincidencias muestra por qué funcionó cada una: el grupo 1 guarda el usuario (ada, regexkit, sales) y el grupo 2 guarda el dominio (example.com, mail.co.uk, shop-example.org). Activa la bandera i y el mismo patrón empieza a aceptar direcciones en mayúsculas; quita la bandera g y solo se encuentra la primera dirección, que es exactamente como se comporta String.replace sin g.

Tres cosas hacen este probador más seguro que pegar patrones en un sitio cualquiera. Primero, todo corre localmente en tu navegador con el motor RegExp de JavaScript, el mismo motor que usan Node.js y todos los navegadores, así que un patrón que pasa aquí se comporta igual en tu código, y tu texto de prueba nunca se sube, guarda ni registra. Segundo, los patrones inválidos fallan con el mensaje de error del propio motor en lugar de no coincidir en silencio, lo que revela corchetes sin cerrar y cuantificadores malos al instante. Tercero, la tabla de coincidencias expone los grupos de captura, incluidos los grupos con nombre, para confirmar el orden de los grupos antes de publicar el patrón. Una advertencia honesta: los cuantificadores anidados como (a+)+ sobre entradas casi coincidentes pueden tardar un tiempo exponencial, un defecto llamado backtracking catastrófico, así que prueba patrones sospechosos contra tu entrada real más larga antes de desplegarlos. Combina este probador con el Formateador JSON, las herramientas Base64 y el Comparador de Textos del mismo grupo para desarrolladores.

Preguntas frecuentes

¿Cómo pruebo una expresión regular en línea?
Escribe tu patrón sin barras alrededor, elige las banderas y pega tu texto de prueba. Las coincidencias se resaltan al instante, y la tabla lista cada coincidencia con su índice y grupos de captura. Usa la biblioteca de patrones para partir de un patrón probado de correo, URL, teléfono o UUID.
¿Qué variante de regex usa este probador?
JavaScript (ECMAScript), el motor integrado en todos los navegadores y Node.js. Los grupos con nombre, lookahead, lookbehind y escapes de propiedad Unicode con la bandera u funcionan. Las funciones solo de PCRE, como cuantificadores posesivos y grupos atómicos, no existen en JavaScript.
¿Qué hacen las banderas g, i, m, s, u e y?
g encuentra todas las coincidencias en lugar de solo la primera; i ignora mayúsculas y minúsculas; m hace que ^ y $ coincidan con límites de línea en lugar de solo los límites del texto; s permite que . acepte saltos de línea; u activa el modo Unicode completo y los escapes \p{...}; y (sticky) solo coincide en la posición lastIndex actual sin buscar más adelante.
¿Cómo funcionan los grupos de captura?
Los paréntesis capturan parte de una coincidencia: en (\w+)@(\w+), el grupo 1 es el usuario y el grupo 2 es el dominio. Los grupos con nombre usan la sintaxis (?<nombre>...) y aparecen en la columna de grupos con nombre. La coincidencia completa es siempre el grupo 0, mostrada en la columna de coincidencia.
¿Por qué mi regex no coincide con nada?
Las causas habituales son una bandera faltante (sin g solo se encuentra la primera coincidencia), un carácter especial que necesita escape (un punto literal es \., un . solo acepta cualquier carácter) y ^ o $ sin la bandera m en texto multilínea. El probador muestra el error del motor para patrones inválidos, así que un error de sintaxis se detecta fácil.
¿Mi texto de prueba se sube o se guarda?
No. La comparación, la vista previa de reemplazo y la generación del fragmento corren localmente en tu navegador sin viaje al servidor, sin cuenta y sin almacenamiento. Cerrar la página descarta todo lo que escribiste, lo que también hace seguro probar patrones contra líneas de registro reales.
Aviso: Los resultados son estimaciones solo para fines de planificación y no constituyen asesoramiento financiero. Los términos reales de préstamos, impuestos y rendimientos de inversión varían. Consulta a un profesional calificado antes de tomar decisiones financieras.