Probador de regex – Prueba expresiones regulares online
Escribe una expresión regular y un texto para ver cada coincidencia resaltada, con grupos de captura, posiciones y una vista previa de reemplazo.
Escribe el patrón entre las barras, elige las banderas como g (global) e i (ignorar mayúsculas) y pega el texto. Las coincidencias se resaltan al escribir, aparecen en una tabla con sus grupos y puedes previsualizar un reemplazo con $1, $2.
Cómo usar la herramienta: Probador de regex
- Escribe la expresión regular (sin las barras).
- Elige banderas: g busca todas las coincidencias, i ignora mayúsculas, m hace que ^ y $ funcionen por línea y s permite que el punto incluya saltos de línea.
- Pega el texto que quieres probar.
- Revisa las coincidencias resaltadas y la tabla de grupos de captura.
- Si quieres, escribe un reemplazo como «$1 en $2» para previsualizar un buscar y reemplazar.
Regex en un minuto
Una expresión regular (regex) es un pequeño lenguaje de patrones para buscar texto. Está integrada en JavaScript, Python, PHP, Java, bases de datos y casi todos los editores de código. Este probador usa el motor JavaScript (ECMAScript) de tu navegador, así que los resultados son exactamente los que obtendrá tu código front-end o Node.js.
Chuleta
| Patrón | Significado | Ejemplo | |
|---|---|---|---|
| . | cualquier carácter salvo salto de línea | a, 7, # | |
| \d \w \s | dígito, carácter de palabra, espacio | 5, x, espacio | |
| [abc] [^abc] | uno de estos / ninguno de estos | a / z | |
| * + ? | 0 o más, 1 o más, opcional | aaa | |
| {2,4} | entre 2 y 4 veces | 123 | |
| ^ $ | inicio / fin del texto (o de línea con m) | ||
| \b | límite de palabra | ||
| ( ) (?<nombre> ) | grupo de captura, grupo con nombre | ||
| a | b | a o b | |
| (?=…) (?!…) | lookahead positivo y negativo |
Grupos de captura y reemplazo
Los paréntesis capturan parte de la coincidencia. En la tabla ves cada grupo como $1, $2, etc., y también los grupos con nombre. En el campo de reemplazo usa $1 para insertar el primer grupo, $& para toda la coincidencia y $<nombre> para un grupo con nombre: muy útil para cambiar el formato de fechas, invertir nombre y apellido o limpiar datos.
A salvo de patrones descontrolados
Algunos patrones, como (a+)+$, pueden tardar un tiempo exponencial con ciertos textos: es el backtracking catastrófico, que ha llegado a tumbar webs reales. Aquí el patrón se ejecuta en un proceso aparte y se detiene a los 1,5 segundos, así la página nunca se congela y sabes que debes corregirlo.
Diferencias entre motores
Casi toda la sintaxis es común, pero hay detalles: JavaScript admite lookbehind y grupos con nombre en navegadores modernos, mientras que los cuantificadores posesivos o la recursión solo existen en PCRE (PHP) y otros motores. Prueba siempre en el motor que vayas a usar. Para datos estructurados en lugar de texto, usa el formateador JSON.
También te pueden servir estas herramientas gratis: Formateador JSON, Generador de contraseñas y Generador de UUID.
Preguntas frecuentes
¿Cómo pruebo una expresión regular?
Escribe el patrón, elige banderas como g e i y pega tu texto. Cada coincidencia se resalta al momento y aparece con su posición y sus grupos.
¿Qué motor de regex usa?
JavaScript (ECMAScript), el integrado en tu navegador. Los resultados son los mismos que en JavaScript y Node.js.
¿Para qué sirve la bandera g?
g (global) busca todas las coincidencias en lugar de parar en la primera. También hace falta para reemplazar todas.
¿Por qué mi patrón se detuvo?
Seguramente provoca backtracking catastrófico, a menudo por cuantificadores anidados como (a+)+. Hazlo más específico, por ejemplo cambiando .* por una clase de caracteres.
¿Se sube mi texto?
No. El patrón y el texto se procesan solo en tu navegador.
Última actualización: