Probador y Validador de Regex

Valida, prueba y depura tus patrones de expresiones regulares (Regex) online con resaltado de coincidencias y explicaciones.

Expresión Regular y Cadena de Prueba

Resultados de las Coincidencias

Los detalles de las coincidencias aparecerán aquí después de probar la expresión.

Visualización de Coincidencias

La cadena de prueba con las coincidencias resaltadas aparecerá aquí.

¿Qué es el Probador y Validador de Regex de Optikit?

El Probador y Validador de Regex de Optikit es una herramienta online gratuita diseñada para que desarrolladores, analistas de datos y cualquier persona que trabaje con texto puedan crear, probar y depurar expresiones regulares (RegEx o RegExp) de forma interactiva y visual. Las expresiones regulares son patrones poderosos para buscar y manipular texto, pero su sintaxis puede ser compleja. Esta herramienta inteligente simplifica el proceso, permitiéndote ver instantáneamente cómo tu patrón RegEx interactúa con una cadena de prueba.

Con esta herramienta de Optikit, puedes ingresar tu expresión regular, especificar las banderas (flags) deseadas (como global, ignore case, multilínea), y proporcionar un texto de muestra. Al probar, la herramienta resalta todas las coincidencias en el texto, diferenciando la coincidencia completa de los grupos de captura individuales con colores distintos. Además, lista detalladamente cada coincidencia, incluyendo los grupos capturados (numerados y nombrados, si la bandera 'd' es soportada por tu navegador). Es una de las herramientas online gratuitas más útiles para dominar las expresiones regulares.

Funcionalidades Destacadas de Optikit:

  • Prueba Interactiva de Regex: Ingresa tu patrón y texto de prueba, y visualiza los resultados al instante.
  • Soporte para Banderas (Flags): Configura banderas comunes de RegExp como g (global), i (ignore case), m (multilínea), s (dotAll), u (unicode), y y (sticky).
  • Visualización de Coincidencias: El texto de prueba se muestra con la coincidencia completa y cada grupo de captura resaltado con colores diferentes para una fácil identificación.
  • Detalles de Coincidencias: Se lista cada coincidencia encontrada, mostrando el texto completo de la coincidencia, su índice de inicio, y los textos de cada grupo de captura (numerado y nombrado si aplica).
  • Manejo de Errores: Informa sobre errores de sintaxis en tu expresión regular o en las banderas.
  • Uso de Bandera 'd' (hasIndices): Intenta utilizar la bandera d para obtener los índices de inicio y fin de los grupos de captura, si es soportada por el navegador.
  • Escapado HTML Seguro: Todos los textos se escapan para prevenir problemas de renderizado o XSS.
  • Herramienta Educativa y de Depuración: Ideal para aprender Regex, probar patrones complejos o depurar por qué una expresión no funciona como se espera. Una de las herramientas inteligentes de Optikit para programadores.

Guía de Uso del Probador de Regex

  1. Ingresa tu Expresión Regular:
    • En el campo "Expresión Regular", escribe el patrón RegEx que deseas probar (ej. \d{3}-\d{2}-\d{4} para un número de seguro social). No incluyas las barras / de inicio y fin; la herramienta las manejará.
  2. Especifica las Banderas (Flags) (Opcional):
    • En el campo pequeño junto a la expresión regular ("Flags"), ingresa las banderas que deseas aplicar (ej. gi para búsqueda global e insensible a mayúsculas/minúsculas). Banderas comunes: g, i, m, s, u, y. La herramienta también intentará usar la bandera d (hasIndices) para obtener información de grupos si es soportada.
  3. Ingresa la Cadena de Prueba:
    • En el área de texto "Cadena de Prueba", pega o escribe el texto contra el cual deseas probar tu expresión regular.
  4. Prueba la Expresión:
    • Haz clic en el botón " Probar Expresión Regular".
  5. Analiza los Resultados:
    • Mensajes: Un área de mensajes te informará si la expresión es válida, si hubo errores, o si no se encontraron coincidencias.
    • Resultados de las Coincidencias: Si hay coincidencias, cada una se listará detalladamente, mostrando el texto completo de la coincidencia, su índice de inicio en la cadena, y todos los grupos de captura (tanto numerados como nombrados, si tu patrón los define y la bandera 'd' está activa y soportada).
    • Visualización de Coincidencias: En esta sección, tu cadena de prueba se mostrará con la coincidencia completa resaltada en un color (generalmente amarillo) y cada grupo de captura resaltado con un color diferente. Pasa el cursor sobre una región resaltada para ver más detalles.

Esta herramienta de Optikit es una de las herramientas online gratuitas más completas para experimentar y perfeccionar tus habilidades con expresiones regulares. Úsala para construir patrones más precisos y eficientes.

¿Qué son las Expresiones Regulares (Regex)?

Una Expresión Regular (a menudo abreviada como "RegEx" o "RegExp") es una secuencia de caracteres que define un patrón de búsqueda. Estos patrones se utilizan para realizar operaciones de búsqueda y reemplazo en cadenas de texto, o para validar si una cadena cumple con un formato específico.

Las expresiones regulares son extremadamente poderosas y flexibles, pero su sintaxis puede parecer críptica al principio. Se componen de caracteres literales (como a, b, 1, 2) y metacaracteres, que tienen un significado especial.

Componentes Básicos de una Regex:

  • Literales: Caracteres que se buscan a sí mismos (ej. gato busca la palabra "gato").
  • Metacaracteres: Caracteres con significado especial. Algunos comunes:
    • . (Punto): Coincide con cualquier carácter excepto nueva línea.
    • *: Cero o más ocurrencias del carácter o grupo precedente.
    • +: Una o más ocurrencias del carácter o grupo precedente.
    • ?: Cero o una ocurrencia del carácter o grupo precedente (también lo hace no codicioso).
    • \d: Coincide con cualquier dígito (0-9). \D con no dígitos.
    • \w: Coincide con cualquier carácter de palabra (letra, número o guion bajo). \W con no palabra.
    • \s: Coincide con cualquier carácter de espacio en blanco (espacio, tab, nueva línea). \S con no espacio.
    • [] (Corchetes): Define un conjunto de caracteres. Ej. [abc] coincide con 'a', 'b', o 'c'. [0-9] coincide con cualquier dígito.
    • () (Paréntesis): Agrupa expresiones y crea grupos de captura.
    • | (Barra vertical): Actúa como un OR lógico. Ej. gato|perro coincide con "gato" o "perro".
    • ^: Coincide con el inicio de la cadena (o línea si la bandera 'm' está activa). Dentro de [], niega el conjunto.
    • $: Coincide con el final de la cadena (o línea si la bandera 'm' está activa).
    • {n}, {n,}, {n,m}: Cuantificadores para especificar el número de ocurrencias.
  • Grupos de Captura: Partes de la expresión regular encerradas en paréntesis (). Permiten extraer subcadenas específicas que coinciden con esa parte del patrón. Pueden ser numerados o, en motores más modernos, nombrados (ej. (?...)).
  • Banderas (Flags): Modifican el comportamiento de la búsqueda (ver pestaña "Banderas Comunes").

Las expresiones regulares son una herramienta fundamental en programación, procesamiento de texto, validación de formularios, y mucho más. Herramientas como este probador visual de Optikit son invaluables para aprender y depurar patrones RegEx complejos. Es una de nuestras herramientas inteligentes para desarrolladores.

Banderas Comunes de Expresiones Regulares

Las banderas (o modificadores) cambian cómo se interpreta o ejecuta una expresión regular. Se añaden después de la expresión regular (ej. /patrón/gmi). Las banderas comunes que puedes usar en esta herramienta Optikit son:

  • g (Global):

    Busca todas las coincidencias en la cadena de prueba, en lugar de detenerse después de la primera. Sin g, RegExp.exec() solo encuentra la primera.

  • i (Ignore Case / Insensible a Mayúsculas/Minúsculas):

    Realiza la búsqueda sin distinguir entre mayúsculas y minúsculas. Por ejemplo, /hola/i coincidirá con "hola", "Hola", "HOLA", etc.

  • m (Multiline / Multilínea):

    Cuando está activa, los metacaracteres ^ (inicio) y $ (fin) coinciden con el inicio y el fin de cada línea individual dentro de la cadena de prueba (delimitada por \n o \r), además de coincidir con el inicio y fin de la cadena completa.

  • s (dotAll / Single Line):

    Permite que el metacaracter . (punto) coincida también con caracteres de nueva línea (\n, \r). Por defecto, . no coincide con saltos de línea.

  • u (Unicode):

    Activa el soporte completo para Unicode. Permite que la expresión regular maneje correctamente caracteres Unicode suplementarios (ej. muchos emojis que están fuera del Plano Multilingüe Básico) y secuencias de escape Unicode en el patrón.

  • y (Sticky / Pegajoso):

    Realiza una búsqueda "pegajosa", lo que significa que solo intentará encontrar una coincidencia a partir de la posición indicada por la propiedad lastIndex de la expresión regular. Si no hay una coincidencia en esa posición exacta, falla, incluso si hay una coincidencia más adelante en la cadena.

  • d (hasIndices / Índices de Grupo):

    Si esta bandera es soportada por el motor JavaScript de tu navegador, el objeto de resultado de la coincidencia (devuelto por RegExp.exec()) incluirá una propiedad indices. Esta propiedad es un array que contiene los índices de inicio y fin para la coincidencia completa y para cada grupo de captura. Esta herramienta Optikit intenta usarla para un resaltado y detalle de grupos más preciso.

Puedes combinar múltiples banderas, por ejemplo gim. Esta herramienta online gratuita te permite experimentar con ellas fácilmente.

Preguntas Frecuentes (FAQ)

¿Qué es una expresión regular (RegEx) y para qué se usa?

Una expresión regular es un patrón de búsqueda definido por una secuencia de caracteres. Se usa para encontrar, reemplazar o validar texto. Por ejemplo, puedes usar una RegEx para encontrar todas las direcciones de correo en un documento o para verificar si una contraseña cumple ciertos criterios. Este probador RegEx de Optikit es una herramienta ideal para practicar.

¿Cómo ingreso mi expresión regular en esta herramienta de Optikit?

Escribe tu patrón de expresión regular directamente en el campo "Expresión Regular". No necesitas incluir las barras inclinadas (/) de inicio y fin que se usan en algunos lenguajes (como JavaScript literal /patrón/); la herramienta las asume. Ingresa solo el patrón en sí.

¿Qué son las "banderas" (flags) y cómo las uso en este validador Regex?

Las banderas modifican cómo se comporta la búsqueda de la expresión regular. Por ejemplo, g (global) encuentra todas las coincidencias, i (ignore case) no distingue mayúsculas/minúsculas. Ingresa las letras de las banderas que deseas usar en el campo pequeño "Flags" junto a la expresión regular (ej. gi, m). Esta herramienta inteligente soporta las banderas comunes de JavaScript.

¿Cómo funciona la visualización de coincidencias resaltadas?

Cuando pruebas tu expresión, el texto de muestra se mostrará con las partes que coinciden resaltadas. La coincidencia completa se resalta de una manera (generalmente amarillo), y si tu RegEx usa grupos de captura (), cada grupo capturado dentro de la coincidencia completa se resaltará con un color diferente. Esto te ayuda a ver exactamente qué partes de tu patrón coinciden con qué texto. Es una característica clave de este probador visual.

¿Qué son los "grupos de captura" y cómo los veo en los resultados?

Los grupos de captura se definen encerrando parte de tu expresión regular entre paréntesis (). Cuando la RegEx coincide, el texto que coincide con cada grupo de captura se "captura" por separado. En la sección "Resultados de las Coincidencias", cada coincidencia principal mostrará una lista de sus grupos de captura (Grupo 1, Grupo 2, etc.) y el texto que capturaron. Esta herramienta online gratuita de Optikit también intenta mostrar grupos nombrados si tu patrón los usa y la bandera 'd' es soportada.

¿Esta herramienta valida mi expresión regular antes de probarla?

Sí. Al hacer clic en "Probar Expresión Regular", la herramienta primero intenta crear un objeto RegExp de JavaScript con tu patrón y banderas. Si hay un error de sintaxis en tu RegEx (ej. un corchete sin cerrar, un cuantificador inválido), se mostrará un mensaje de error indicando el problema, y la prueba no continuará hasta que lo corrijas.

¿Qué motor de expresiones regulares utiliza este probador de Optikit?

Este probador de RegEx utiliza el motor de expresiones regulares incorporado en tu navegador web (el motor de JavaScript). Esto significa que el comportamiento y las características soportadas serán las del motor de JavaScript que tu navegador esté utilizando (ej. V8 en Chrome/Edge, SpiderMonkey en Firefox, JavaScriptCore en Safari). Esto es útil porque puedes probar cómo se comportará tu RegEx directamente en un entorno de cliente web.

¿Por qué la visualización de grupos es limitada si mi navegador no soporta la bandera 'd' (hasIndices)?

La bandera d (hasIndices) es una característica relativamente nueva en JavaScript que permite que el resultado de una coincidencia de RegEx incluya los índices de inicio y fin para cada grupo de captura. Sin esta información precisa de los índices de los grupos, el resaltado visual de los grupos puede ser menos exacto o limitarse a mostrar solo la coincidencia completa. Esta herramienta inteligente de Optikit intenta usarla, pero recurre a un resaltado más básico si no está disponible.

¿El texto que ingreso se envía a algún servidor?

No. Todas las pruebas y el procesamiento de las expresiones regulares y las cadenas de texto se realizan localmente en tu navegador. Ningún dato se envía a los servidores de Optikit. Puedes usar esta herramienta online gratuita con confianza para probar tus patrones sin preocuparte por la privacidad de tus datos de prueba.

¿Optikit ofrece alguna referencia o cheatsheet de expresiones regulares?

Actualmente, la pestaña "Banderas Comunes" y "¿Qué son las Regex?" ofrecen una introducción. Optikit está considerando añadir un cheatsheet de expresiones regulares más completo como una de sus herramientas de referencia en el futuro para complementar este probador visual. ¡Visita nuestra sección de "Referencia y Cheatsheets"!

¿El Probador Regex te ha sido útil?

Tu apoyo nos ayuda a mantener Optikit gratuito y a desarrollar más herramientas inteligentes para todos.

Apoyar a Optikit