Gerador de Dados por Regex
Gere dados aleatórios que correspondam às suas expressões regulares
Entrada
Saída
Leia-me
O que é uma expressão regular?
Uma expressão regular (regex) é uma sequência de caracteres que define um padrão de busca. Originalmente desenvolvidas para a teoria das linguagens formais, as expressões regulares são hoje utilizadas em praticamente todas as linguagens de programação e ferramentas de processamento de texto para localizar, pesquisar e manipular strings. Um padrão como [a-z]+@[a-z]+\.com descreve a estrutura de um endereço de e-mail simples — letras, seguidas do símbolo @, mais letras, um ponto e a string literal "com."
Além da busca, as expressões regulares também podem servir como modelos para a geração de dados. Ao inverter o processo de correspondência, um motor de regex pode produzir strings aleatórias que obedecem a um determinado padrão. Isso é especialmente útil para testes de software, prototipagem e preenchimento de bancos de dados com dados fictícios de aparência realista, sem depender de informações reais de usuários.
Descrição da ferramenta
Esta ferramenta gera strings aleatórias que correspondem a qualquer expressão regular fornecida. Insira um padrão regex — ou escolha entre os modelos predefinidos — e produza instantaneamente até 1.000 valores correspondentes. Suporta toda a sintaxe padrão de regex, incluindo classes de caracteres, quantificadores, grupos, alternância e retrorreferências. O resultado pode ser usado diretamente como fixtures de teste, dados de seed ou entrada para scripts de validação.
Funcionalidades
- Modelos predefinidos para formatos comuns: e-mail, IPv4, UUID, número de telefone americano, data, cor hexadecimal, placa de veículo e endereço MAC
- Entrada de regex personalizada com suporte à sintaxe completa de expressões regulares do JavaScript
- Quantidade ajustável de 1 a 1.000 valores gerados por execução
- Controle de repetição máxima para limitar quantas vezes os quantificadores ilimitados (
+,*,{n,}) se expandem, evitando strings excessivamente longas - Modo somente valores únicos que remove duplicatas do resultado e avisa caso a entropia do padrão seja insuficiente para produzir valores distintos suficientes
Casos de uso
- Testes de software: Gere centenas de endereços de e-mail, UUIDs ou endereços IP com aparência válida para usar como fixtures de teste ou dados de seed em suítes de testes automatizados, sem expor informações reais de usuários.
- Preenchimento de banco de dados: Popule rapidamente bancos de dados de desenvolvimento ou homologação com dados fictícios realistas que respeitam as restrições de colunas e regras de validação.
- Aprendizado de regex: Experimente a sintaxe de expressões regulares escrevendo um padrão e vendo imediatamente quais strings ele pode produzir, facilitando a compreensão de quantificadores, classes de caracteres e agrupamentos.
Explicação das opções
| Opção | Descrição |
|---|---|
| Modelo predefinido | Selecione um padrão integrado para formatos de dados comuns ou escolha "Personalizado" para escrever seu próprio regex. Ao selecionar um modelo, o campo de padrão regex é preenchido automaticamente. |
| Padrão regex | A expressão regular utilizada para gerar os dados. Suporta classes de caracteres ([a-z]), quantificadores ({3,8}, +, *), grupos e alternância ((com|net|org)) e tokens especiais (\d, \w). |
| Quantidade | Número de strings a serem geradas, entre 1 e 1.000. |
| Repetição máxima | Limita a expansão de quantificadores ilimitados. Por exemplo, com a repetição máxima definida como 10, o padrão [a-z]+ produzirá strings de no máximo 10 caracteres. Intervalo: 1–100. |
| Somente valores únicos | Quando ativado, garante que não apareçam strings duplicadas no resultado. Se o padrão não conseguir produzir valores únicos suficientes, um aviso é exibido com o número real de valores gerados. |
Dicas
- Comece com um modelo predefinido e modifique-o para entender como os padrões regex se traduzem em dados gerados.
- Se precisar de saída com comprimento fixo, use quantificadores exatos como
{8}em vez de intervalos como{5,10}. - Reduza o valor de repetição máxima ao usar
+ou*para manter as strings geradas curtas e legíveis. - Ative o modo de valores únicos ao gerar identificadores ou chaves que não podem se repetir, mas utilize um padrão com variação suficiente para evitar atingir o limite de unicidade.
Perguntas frequentes
Posso usar lookaheads ou lookbehinds? O gerador é baseado na biblioteca randexp.js, que suporta a maioria dos recursos de regex do JavaScript. Lookaheads e lookbehinds não são suportados para geração, pois não definem o conteúdo dos caracteres.
Por que recebi menos resultados do que o solicitado? Com o modo "Somente valores únicos" ativado, o padrão pode não ter permutações possíveis suficientes para produzir o número solicitado de strings distintas. Tente ampliar as classes de caracteres ou aumentar os intervalos dos quantificadores.
O resultado é verdadeiramente aleatório? O resultado é pseudoaleatório. Cada execução produz resultados diferentes, mas a aleatoriedade não é criptograficamente segura. Não utilize esta ferramenta para gerar senhas ou tokens de segurança.