TextToolbox Herramientas de texto instantáneas

Probador de Expresiones Regulares

Ingresa un patrón y una cadena de prueba — las coincidencias se resaltan en vivo. El patrón y las banderas se sincronizan con la URL para compartir; tu cadena de prueba, nunca.

/ /

Resultado resaltado

Coincidencias (0)

    Prueba expresiones regulares de JavaScript contra texto real

    Esta herramienta construye un RegExp nativo a partir de tu patrón y tus banderas, y lo ejecuta contra tu cadena de prueba igual que lo haría tu propio código JavaScript — con matchAll() cuando la bandera global está activa, o un solo exec() cuando no lo está. Cada coincidencia se resalta en su lugar, y cada una se lista abajo con su índice en la cadena y el texto capturado por cualquier grupo entre paréntesis.

    Ejemplo práctico

    Patrón: (\w+)@(\w+)\.com, banderas gu, contra "Contact alice@example.com or bob@test.com for help."

    Dos coincidencias, porque la bandera global está activa — sin ella, la herramienta se detendría después de encontrar "alice@example.com" solamente.

    Preguntas frecuentes

    ¿Por qué el punto (.) no coincide con un salto de línea en mi texto de prueba?

    Por defecto, el . de JavaScript coincide con cualquier carácter excepto los terminadores de línea. Si tu cadena de prueba tiene varias líneas y necesitas que . también cruce entre ellas, activa la bandera s (dotAll) — con ella, . también coincide con saltos de línea. Sin esa bandera, un patrón como a.b coincide con "axb" pero no con "a\nb"; con la bandera s, ambos coinciden.

    ¿Qué hace cada bandera (flag)?

    g (global) busca todas las coincidencias en vez de detenerse en la primera. i (ignoreCase) hace la búsqueda insensible a mayúsculas/minúsculas. m (multiline) hace que ^ y $ coincidan con el inicio/fin de cada línea, no solo de toda la cadena. s (dotAll) hace que . también coincida con saltos de línea. u (unicode) trata el patrón como una secuencia de puntos de código Unicode, lo que corrige la coincidencia de caracteres fuera del plano básico multilingüe (muchos emoji) y habilita escapes de propiedad Unicode como \p{L}.

    ¿Es sintaxis de expresiones regulares específica de JavaScript?

    Sí. Esta herramienta construye un RegExp nativo de JavaScript, así que sigue las reglas de JS al pie de la letra — y eso no es universal. Otras herramientas y lenguajes usan dialectos distintos: PCRE (usado por PHP, y un superconjunto en el que muchas herramientas se inspiran) admite sintaxis que JS no tiene (como grupos atómicos y cuantificadores posesivos), y a la inversa, JS tiene funciones que versiones antiguas de PCRE no tienen. Si escribes un patrón para grep, el módulo re de Python, o una herramienta basada en PCRE, pruébalo también ahí — que coincida aquí no garantiza que coincida en otro lado.

    ¿Cómo funcionan los grupos de captura?

    Los paréntesis en un patrón crean un grupo de captura — el texto que ese grupo encontró se extrae por separado de la coincidencia completa. Por ejemplo, (\w+)@(\w+)\.com contra "alice@example.com" coincide con toda la cadena como grupo 0 (la coincidencia completa), con el grupo 1 capturando "alice" y el grupo 2 capturando "example". Esta herramienta lista el texto capturado por cada grupo debajo de cada coincidencia.

    Inserta esta herramienta en tu web

    Uso libre, sin más atribución que el enlace que ya incluye el widget. Se ejecuta por completo en el navegador de quien lo visita, así que no añade carga a tu servidor.

    Ver el widget