#037 · Herramienta para desarrolladores

Regex Generator

Crea una expresión regular inicial a partir de ejemplos positivos, evitando prometer inferencia semántica que el navegador no puede justificar. Puedes generar una alternancia exacta que cubra cada línea o una plantilla basada en el prefijo y sufijo comunes de los ejemplos. El resultado se escapa para JavaScript y muestra qué parte fue inferida y qué parte sigue siendo genérica.

Datos de entrada

Ejemplos positivos
Espacio publicitario

Cómo usar esta herramienta para desarrolladores

  1. Introduce un ejemplo válido por línea.
  2. Elige alternancia exacta o prefijo/sufijo comunes.
  3. Decide si la regex debe quedar anclada.
  4. Activa la opción de ignorar mayúsculas si corresponde.
  5. Genera la expresión y pruébala después con casos negativos.

Qué hace esta herramienta para desarrolladores

La estrategia exacta crea una lista de alternativas escapadas. La estrategia común conserva el prefijo y sufijo compartidos y usa .+? para la parte variable cuando existe.

Los caracteres especiales de regex se escapan antes de construir el patrón. El algoritmo de prefijo/sufijo compara todos los ejemplos carácter a carácter y no intenta adivinar tipos como fechas o IDs.

Una regex inferida solo de ejemplos positivos puede aceptar valores no deseados. Añade casos negativos y reglas de dominio antes de usarla para validación.

Ejemplo

Ejemplos: INV-001, INV-002

^(?:INV-001|INV-002)$

Casos de uso

  • Crear rápidamente un patrón exacto para una lista finita.
  • Detectar prefijos y sufijos estables en identificadores.
  • Preparar una primera regex para refinar en el tester.
  • Escapar cadenas literales antes de incorporarlas a una expresión regular.

Consejos para obtener resultados fiables

  • Añade ejemplos negativos al probar el patrón final.
  • Prefiere alternancia exacta cuando la lista válida sea cerrada.
  • No interpretes .+? como una regla de negocio.
  • Reemplaza segmentos genéricos por clases como \d{3} cuando conozcas el formato.
  • Comprueba el patrón en el mismo motor donde se ejecutará.

Detalles del procesamiento

La generación es determinista y local. No usa modelos ni APIs externas; por eso la herramienta explica explícitamente qué se deriva de los ejemplos.

No aprende una gramática ni distingue automáticamente números, fechas, UUID, correos u otros tipos semánticos.

Preguntas frecuentes

¿Puede generar una regex automáticamente desde varias cadenas válidas?

Sí. Puede crear una alternancia exacta o conservar el prefijo y sufijo comunes dejando una parte variable genérica.

¿La regex generada garantiza que solo acepte valores válidos?

No. Con ejemplos positivos no se pueden inferir todas las restricciones; debes probar casos negativos y añadir reglas del dominio.

¿Escapa caracteres como punto, paréntesis o signo más?

Sí. Cada ejemplo literal se escapa antes de incorporarlo al patrón para que esos caracteres no cambien el significado regex.

¿Qué diferencia hay entre alternancia exacta y prefijo/sufijo comunes?

La alternancia solo acepta los ejemplos listados; la estrategia común puede aceptar nuevos valores que compartan los extremos inferidos.

¿Puedo usar la salida directamente en JavaScript?

Sí como patrón textual de RegExp, pero revisa los delimitadores y flags según cómo vayas a integrarlo en tu código.

Resumen técnico

ElementoDetalle
EntradaEjemplos positivos por línea
EstrategiasExacta o común
EscapeMetacaracteres regex
InferenciaSin semántica automática