Generador de Datos con Regex
Genera datos aleatorios que coincidan con tus expresiones regulares
Entrada
Salida
Leerme
¿Qué es una expresión regular?
Una expresión regular (regex) es una secuencia de caracteres que define un patrón de búsqueda. Desarrolladas originalmente para la teoría del lenguaje formal, las expresiones regulares se utilizan hoy en prácticamente todos los lenguajes de programación y herramientas de procesamiento de texto para buscar, encontrar y manipular strings. Un patrón como [a-z]+@[a-z]+\.com describe la estructura de una dirección de correo electrónico simple: letras, seguidas de un símbolo @, más letras, un punto y el string literal "com."
Más allá de la búsqueda, las expresiones regulares también pueden servir como plantillas para generar datos. Al invertir el proceso de coincidencia, un motor de regex puede producir strings aleatorios que se ajusten a un patrón determinado. Esto resulta especialmente útil para pruebas de software, creación de prototipos y el llenado de bases de datos con datos de prueba de apariencia realista, sin depender de información real de usuarios.
Descripción de la herramienta
Esta herramienta genera strings aleatorios que coinciden con cualquier expresión regular que proporciones. Introduce un patrón regex —o elige entre los presets integrados— y produce al instante hasta 1.000 valores coincidentes. Admite toda la sintaxis estándar de regex, incluyendo clases de caracteres, cuantificadores, grupos, alternancia y referencias inversas. El resultado puede utilizarse directamente como fixtures de prueba, datos iniciales o entrada para scripts de validación.
Características
- Presets integrados para formatos comunes: correo electrónico, IPv4, UUID, número de teléfono de EE. UU., fecha, color hexadecimal, matrícula de vehículo y dirección MAC
- Entrada de regex personalizada que acepta la sintaxis completa de expresiones regulares de JavaScript
- Cantidad ajustable de 1 a 1.000 valores generados por ejecución
- Control de repetición máxima para limitar cuántas veces se expanden los cuantificadores no acotados (
+,*,{n,}), evitando strings excesivamente largos - Modo solo valores únicos que elimina duplicados en la salida y advierte si la entropía del patrón es demasiado baja para producir suficientes valores distintos
Casos de uso
- Pruebas de software: Genera cientos de direcciones de correo electrónico, UUIDs o direcciones IP de apariencia válida para usar como fixtures de prueba o datos iniciales en suites de pruebas automatizadas, sin exponer información real de usuarios.
- Población de bases de datos: Llena rápidamente bases de datos de desarrollo o staging con datos de prueba realistas que se ajusten a las restricciones de columnas y reglas de validación.
- Aprendizaje de regex: Experimenta con la sintaxis de expresiones regulares escribiendo un patrón y viendo de inmediato qué strings puede producir, lo que facilita la comprensión de cuantificadores, clases de caracteres y agrupaciones.
Explicación de las opciones
| Opción | Descripción |
|---|---|
| Preset | Selecciona un patrón integrado para formatos de datos comunes, o elige "Personalizado" para escribir tu propio regex. Al seleccionar un preset, el campo del patrón regex se rellena automáticamente. |
| Patrón regex | La expresión regular utilizada para generar datos. Admite clases de caracteres ([a-z]), cuantificadores ({3,8}, +, *), grupos y alternancia ((com|net|org)), y tokens especiales (\d, \w). |
| Cantidad | Número de strings a generar, entre 1 y 1.000. |
| Repetición máxima | Limita la expansión de los cuantificadores no acotados. Por ejemplo, con la repetición máxima establecida en 10, el patrón [a-z]+ producirá strings de como máximo 10 caracteres. Rango: 1–100. |
| Solo valores únicos | Cuando está activado, garantiza que no aparezcan strings duplicados en la salida. Si el patrón no puede producir suficientes valores únicos, se muestra una advertencia con el número real de valores generados. |
Consejos
- Comienza con un preset y modifícalo para aprender cómo los patrones regex se traducen en datos generados.
- Si necesitas una salida de longitud fija, utiliza cuantificadores exactos como
{8}en lugar de rangos como{5,10}. - Reduce el valor de repetición máxima cuando uses
+o*para mantener los strings generados cortos y legibles. - Activa el modo único al generar identificadores o claves que no deben repetirse, pero utiliza un patrón con suficiente variación para evitar alcanzar el límite de unicidad.
Preguntas frecuentes
¿Puedo usar lookaheads o lookbehinds? El generador está basado en la librería randexp.js, que admite la mayoría de las características de regex de JavaScript. Los lookaheads y lookbehinds no están soportados para la generación, ya que no definen contenido de caracteres.
¿Por qué obtuve menos resultados de los solicitados? Con el modo "Solo valores únicos" activado, es posible que el patrón no tenga suficientes permutaciones posibles para producir el número solicitado de strings distintos. Intenta ampliar las clases de caracteres o aumentar los rangos de los cuantificadores.
¿Es la salida verdaderamente aleatoria? La salida es pseudoaleatoria. Cada ejecución produce resultados diferentes, pero la aleatoriedad no es criptográficamente segura. No utilices esta herramienta para generar contraseñas ni tokens de seguridad.