Regex Tester: prueba expresiones regulares online
Con el Regex Tester puedes probar expresiones regulares online usando el motor de JavaScript de tu navegador. Las coincidencias se resaltan y se enumeran con su posición y sus grupos de captura; por ejemplo, \b([\w.-]+)@([\w-]+\.[a-zA-Z]{2,})\b encuentra 2 direcciones de correo electrónico en un texto de contactos, junto con el nombre y el dominio. El patrón y el texto no salen de tu navegador.
Creado por Jakub Martyniak
¿Vas a implementar este patrón? Ejecuta tu aplicación en un VPS con acceso root completo.
Entrada
Resultado
Introduce un patrón a la izquierda para ver los resultados.
Resultado de ejemplo
Así se muestra un resultado en el probador de expresiones regulares
Introduce un patrón y un texto. La herramienta mostrará cada coincidencia con su posición y grupos de captura y, en el modo de sustitución, el texto resultante. El ejemplo de abajo usa direcciones ficticias; tus coincidencias dependerán de tu patrón y tu texto.
Ejemplo · Indicador g (todas las coincidencias)
2 resultadosEntrada
- Patrón
- \b([\w.-]+)@([\w-]+\.[a-zA-Z]{2,})\b
- El grupo 1 captura la parte anterior a @; el grupo 2, el dominio.
- Texto de prueba
- info@example.com, support@example.org, no-at.example.net
Resultado
- Coincidencias 1
- info@example.com
- Índice 0 · Grupo 1: info · Grupo 2: example.com
- Coincidencias 2
- support@example.org
- Índice 18 · Grupo 1: support · Grupo 2: example.org
- Sustituir por $1 [at] $2
- info [at] example.com, support [at] example.org, no-at.example.net
- La dirección sin @ no se reconoce y permanece sin cambios.
Por qué esta herramienta
Más que una prueba de coincidencia
Las principales funciones del Regex Tester de un vistazo.
Coincidencias resaltadas y contadas
Tras una breve pausa al escribir, la herramienta cuenta todas las coincidencias y las resalta en el resultado; si hay muchas, resalta las primeras 1000.
Supervisión de grupos de captura
Cada coincidencia aparece en una lista con su índice y, debajo, sus grupos de captura numerados y con nombre por separado.
Flags g, i, m, s y u
Activa o desactiva los cinco flags mediante casillas, con el mismo significado que en código JavaScript. g está activado por defecto.
Modo de sustitución
Sustituye las coincidencias mediante String.prototype.replace() usando $1 y $2 para los grupos de captura. Copia el resultado con un clic.
Protección contra el retroceso catastrófico
La evaluación se ejecuta en un Web Worker y se detiene tras 1 segundo para que un patrón como (a+)+ no bloquee la pestaña.
Solo se ejecuta en el navegador
El patrón y el texto de prueba se procesan exclusivamente en el cliente; no se envía nada a ningún servidor.
Guía
Cómo probar expresiones regulares online
Del patrón al resultado copiado: así se usa el Regex Tester.
Paso 1
Seleccionar modo
Selecciona arriba el modo «Buscar coincidencias» para revisarlas o «Sustituir» para sustituir texto.
Paso 2
Introducir patrón
Introduce tu expresión regular sin barras delimitadoras en el campo «Patrón» o usa «Cargar ejemplo» para cargar un patrón de correo electrónico con un texto de ejemplo.
Paso 3
Configurar flags
Activa o desactiva los flags g, i, m, s o u mediante casillas. g está activado por defecto; los flags activos aparecen detrás del patrón, p. ej., /g.
Paso 4
Insertar texto de prueba
Pega tu texto en el campo «Texto de prueba». Tras una breve pausa al escribir, las coincidencias se resaltan en el resultado y se cuentan arriba.
Paso 5
Revisar y copiar coincidencias
La lista muestra cada coincidencia con su índice y sus grupos de captura. Con el botón de copiar, copias todas las coincidencias, una por línea.
Paso 6
Sustituir y copiar el resultado
En el modo «Sustituir», introduce el texto nuevo en el campo «Sustituir por», usando $1 y $2 para los grupos de captura, y copia el resultado con el botón de copiar.
Guía rápida
Guía rápida de regex: los elementos más importantes
Una expresión regular (regex) es un patrón de búsqueda de texto: te permite encontrar, comprobar, extraer o sustituir cadenas como direcciones de correo electrónico, fechas o entradas de registro. Puedes probar estos elementos de la sintaxis de JavaScript directamente en el Regex Tester de arriba.
| Token | Significado |
|---|---|
| . | Cualquier carácter excepto un salto de línea; con el flag s, también los saltos de línea |
| \d | Un dígito del 0 al 9 |
| \w | Carácter de palabra: solo A–Z, a–z, 0–9 y _; no incluye letras como ä, é o ñ |
| \s | Espacios en blanco, como espacios, tabulaciones o saltos de línea |
| \p{L} | Cualquier letra, incluso con diéresis o acento; solo con el flag u |
| \b | Límite de palabra; p. ej., \bRegex\b para encontrar exactamente esa palabra |
| ^ $ | Inicio y final del texto; con el flag m, de cada línea |
| [abc] | Uno de los caracteres a, b o c |
| [^abc] | Cualquier carácter excepto a, b y c |
| a|b | a o b |
| * + ? | Cero o más, una o más, cero o una aparición |
| {2,5} | De dos a cinco repeticiones |
| .*? | Un ? añadido hace que el cuantificador sea no codicioso (lazy): busca el menor número posible de caracteres |
| ( … ) | Grupo de captura; en el Regex Tester aparece como grupo 1, 2, etc. |
| (?<name> … ) | Grupo de captura con nombre; en el Regex Tester también aparece bajo su nombre |
| (?: … ) | Grupo sin captura, p. ej., para alternativas o cuantificadores |
| (?= … ) (?! … ) | Lookahead: solo si después viene … o no viene … |
| \. | Una barra invertida antes de un carácter especial hace que se interprete literalmente; p. ej., \. representa un punto |
Descubrir más
Más herramientas
Comparar textos online (Diff Checker)
Compara textos online: compara dos textos, configuraciones o versiones de código, ve las diferencias por línea y palabra y cópialas como Unified Diff. Funciona íntegramente en el navegador.
Creado por Dimitri Heissler
Formateador de JSON
Formatea, minifica y valida JSON con resaltado de sintaxis, indicación de errores y descarga, todo en el navegador.
Creado por Jakub Martyniak
Validador de YAML
Comprueba la sintaxis YAML y aplica un formato normalizado o conviértelo directamente a JSON. Admite varios documentos separados por `---` (p. ej., manifiestos de Kubernetes), con errores que indican la línea y la columna exactas. Todo en el navegador.
Creado por Jakub Martyniak
Generador de Crontab
Crea expresiones Cron mediante un formulario, con explicaciones en español y una vista previa de las próximas ejecuciones, todo desde el navegador.
Creado por Jakub Martyniak
Codificador y decodificador de URL
Codifica y decodifica URL y texto en línea: compara encodeURIComponent, encodeURI y el formato de formulario, con una tabla de parámetros de consulta y un generador de enlaces UTM. Funciona íntegramente en el navegador.
Creado por Dimitri Heissler
Generador de .htaccess y generador de htpasswd
Crea archivos .htaccess y .htpasswd para Apache en línea: redirecciones 301, HTTPS, protección con contraseña bcrypt, reglas de WordPress, páginas de error, caché, GZIP y protección contra hotlinking. Funciona íntegramente en el navegador.
Creado por Dimitri Heissler
FAQ
Preguntas frecuentes sobre el Regex Tester
Respuestas breves sobre expresiones regulares y esta herramienta.
Una lista de todas las coincidencias con sus posiciones y grupos de captura. El patrón \b([\w.-]+)@([\w-]+\.[a-zA-Z]{2,})\b encuentra 2 coincidencias en el texto «info@example.com, support@example.org, no-at.example.net»: info@example.com desde el índice 0 y support@example.org desde el índice 18, cada una con el nombre y el dominio como grupos 1 y 2. En el modo de sustitución, $1 [at] $2 produce «info [at] example.com, support [at] example.org, no-at.example.net».
Sí. El Regex Tester es gratuito y no requiere una cuenta: abre la página, introduce el patrón y el texto de prueba y revisa las coincidencias.
No. La evaluación se realiza en tu navegador, en un Web Worker que utiliza el propio motor RegExp del navegador. No se sube ni se registra nada. Esto es importante porque los textos de prueba suelen contener líneas de registro o direcciones de correo electrónico reales.
El motor nativo de JavaScript (ECMAScript) de tu navegador, es decir, la misma sintaxis de regex que en JavaScript, TypeScript y Node.js. PCRE (PHP, Perl) y el módulo re de Python difieren en algunos detalles: \K no existe en JavaScript y los grupos con nombre se escriben como (?<name>…) en lugar de (?P<name>…).
g (global) devuelve todas las coincidencias y está activado por defecto. Sin g, la herramienta se comporta como RegExp.exec() y devuelve como máximo una coincidencia. i ignora las mayúsculas y minúsculas; m hace que ^ y $ funcionen al principio y al final de cada línea; s permite que el punto coincida también con saltos de línea; y u activa el modo Unicode, necesario, por ejemplo, para \p{L}.
Cambia al modo «Sustituir» e introduce el texto nuevo en el campo «Sustituir por». Usa $1, $2, etc. para insertar grupos de captura y $<name> para los grupos con nombre. La herramienta utiliza String.prototype.replace(): sin el flag g, solo se sustituye la primera coincidencia. Copia el resultado con el botón de copiar.
Sí. Debajo de cada coincidencia aparecen sus grupos de captura: los numerados como 1, 2, etc., y los que tienen nombre, como (?<jahr>\d{4}), también bajo ese nombre. Si un grupo no ha capturado nada, aparece «(sin coincidencia)».
Si el patrón no es válido, por ejemplo porque un paréntesis no está cerrado, la herramienta muestra el error del motor del navegador. Si la evaluación tarda más de 1 segundo, se detiene: normalmente, el patrón es vulnerable al retroceso catastrófico, por ejemplo, por cuantificadores anidados como (a+)+. Simplifica el patrón o acorta el texto de prueba.
El número de coincidencias siempre es exacto. Se resaltan como máximo las primeras 1000 y se enumeran las primeras 200, cada una con su índice y sus grupos de captura. Si hay más de 200, aparece un aviso encima del texto resaltado.
¿Tienes más preguntas?
Contactar con soporteTu aplicación necesita un servidor fiable detrás
Un VPS de ZAP-Hosting pone tu aplicación o proyecto en línea de forma fiable.
Sin configuración. Sin riesgos. En línea en segundos.
¿Buscas más herramientas? Ver todas las herramientas para desarrolladores
