Testador de Expressões Regulares (Regex)
Teste expressões regulares contra qualquer texto diretamente no navegador. Veja todos os matches, índices e grupos capturados. Suporta flags g, i, m, s, u, y. Processamento 100% local.

Processamento 100% local.
Nenhum texto ou padrão é enviado para servidor. O teste roda em segundo plano, com limite de 2 segundos: se o padrão entrar em backtracking catastrófico, a execução é interrompida e a página continua respondendo.
Gostou? Mostre pra todo mundo
Gere um card bonito com a marca do ValorFinal para postar nos Stories ou mandar no WhatsApp. Nada que você digitou aparece no card.
O padrão que você digita é compilado com new RegExp(padrão, flags) e aplicado ao texto de teste com String.matchAll(). A página devolve cada ocorrência, o índice onde ela começa, os grupos de captura e os grupos nomeados. Tudo roda no seu navegador, dentro de um Web Worker com tempo limite, e nada é enviado para servidor.
Como funciona o testador de regex
A engine é a do próprio JavaScript (ECMAScript), a mesma do Node e dos navegadores. Isso importa na hora de comparar resultados: PCRE, RE2, Python e Go têm diferenças reais, como recursão, quantificador possessivo e lookbehind de tamanho variável. Um padrão que funciona aqui pode se comportar de outro jeito na sua linguagem.
As flags mudam o significado do padrão. g procura todas as ocorrências e é sempre ligada aqui; i ignora a diferença entre maiúscula e minúscula; m faz ^ e $ valerem por linha; s faz o ponto casar a quebra de linha; u liga o modo Unicode, necessário para \p{L}; y prende a busca à posição atual.
A execução acontece em um Web Worker separado, com limite de 2 segundos. Um regex já em execução não pode ser interrompido de dentro da própria thread, nem por try/catch nem por temporizador: ele simplesmente não termina. Encerrar o Worker é a única forma de recuperar a página, e é o que acontece quando o tempo estoura.
Para converter o resultado em outros formatos ou testar codificações, veja também as ferramentas DevOps.
Fórmula
matches = [...texto.matchAll(new RegExp(padrão, flags))]
índice = match.index · grupos = match.slice(1) · nomeados = match.groups
Base: especificação ECMAScript (RegExp) e a engine nativa do navegador. Execução local, sem envio de dados.
Limitações
- Usa a engine de JavaScript. Não reproduz recursão, quantificador possessivo, grupo atômico nem verbos de controle de PCRE, e não simula o comportamento linear de RE2.
- Mostra no máximo 200 ocorrências e aceita 5.000 caracteres de texto, para não travar o navegador com listas gigantes.
- O tempo limite protege esta página, não o seu sistema. Um padrão que estoura o tempo aqui continua sendo uma porta de negação de serviço no seu servidor.
- Não substitui teste automatizado: use os casos daqui como base para os testes do seu próprio código.
Coloque a calculadora de Regex Tester no seu site, de graça
Tem site, blog ou loja virtual? Esta calculadora tem uma versão para incorporar: você copia um código e cola no seu HTML. Sem cadastro, sem mensalidade e sem limite de acessos, e o cálculo acompanha a regra vigente sozinho.
calculadora de Regex Tester para sitever todas as calculadoras para site
Calculadoras relacionadas
Guias sobre este tema
Formatador de código
Entenda o que faz um formatador de código, a diferença entre formatar, validar e minificar, quando usar em SQL, XML, YAML, HTML, CSS e JavaScript, e os cuidados ao colar código sensível em ferramentas online.
CNPJ alfanumérico
O CNPJ passou a aceitar letras em julho de 2026. Veja o que muda na prática, como fica o cálculo do dígito verificador com o valor ASCII menos 48, e o que precisa ser ajustado em banco de dados, máscara e validação.
Cálculo auditável, com fórmula e fontes transparentes
Atualizado em . Fontes: ECMAScript Specification / MDN Web Docs / RFC 5234.
Processamento local: esta ferramenta roda no seu navegador e nada é enviado a servidores automaticamente.
Referências técnicas
- MDN Web Docs - RegExpTécnica
- MDN - String.matchAll()Técnica
- MDN Web Workers APITécnica
- MDN RegExp named groupsTécnica
Links externos para o que foi consultado na construção desta página, com a natureza de cada fonte identificada. O conteúdo delas pode mudar sem aviso; em caso de divergência, vale sempre a fonte primária.
Incorpore esta calculadora no seu site (grátis)
Copie e cole o código no seu site. A calculadora se atualiza sozinha. O crédito ao ValorFinal vem junto do código e a gente agradece quem mantém, mas ele é opcional: pode remover sem perder o widget. O link sai com rel="nofollow", ou seja, não transfere autoridade de busca para a gente.
Perguntas frequentes
O que é uma expressão regular (regex)?
Uma expressão regular (regex ou regexp) é um padrão de texto usado para encontrar, validar ou substituir sequências de caracteres. Por exemplo, o padrão '\d{3}-\d{4}' encontra números no formato 000-0000. Regex é amplamente usada em linguagens de programação, editores de texto e ferramentas de linha de comando.
O que são as flags de regex?
Flags modificam o comportamento da regex: 'g' (global) encontra todos os matches em vez de apenas o primeiro; 'i' (insensitive) ignora maiúsculas/minúsculas; 'm' (multiline) faz ^ e $ corresponder ao início/fim de cada linha; 's' (dotAll) faz o ponto '.' também capturar quebras de linha.
O que são grupos de captura em regex?
Grupos de captura são partes entre parênteses na regex que 'capturam' substrings para referência posterior. Por exemplo, em '(\d{4})-(\d{2})' aplicado a '2026-05', o grupo 1 captura '2026' e o grupo 2 captura '05'. Grupos nomeados usam a sintaxe '(?<nome>padrão)'.
O que é ReDoS (Regex Denial of Service)?
ReDoS ocorre quando uma regex com backtracking catastrófico é executada contra um texto que quase casa, e o tempo de execução dobra a cada caractere a mais. Padrões como '(a+)+' ou '([a-z]+)+@' são vulneráveis: contra 26 caracteres o padrão '(a+)+$' já leva cerca de 0,4 segundo, e contra 40 caracteres trava a aba. Esta página executa o teste em um Web Worker separado com limite de 2 segundos e encerra o Worker quando o tempo estoura, então a página continua respondendo. Esse limite protege a página, não o seu sistema: um padrão que estoura aqui continua sendo uma porta de negação de serviço no seu servidor.
Por que o teste roda em segundo plano e não na própria página?
Porque uma expressão regular já em execução não pode ser interrompida de dentro da mesma thread. Nem try/catch nem temporizador funcionam: o try/catch só age quando algo lança exceção, e backtracking catastrófico não lança nada, apenas não termina. Enquanto isso, a thread está presa no regex e não processa cliques nem temporizadores. Rodando em um Web Worker, a página continua livre e consegue encerrar o Worker, que é a única forma real de cancelar a execução.
Meus dados são enviados para algum servidor?
Não. O padrão regex e o texto de teste são processados inteiramente no navegador usando a engine de regex nativa do JavaScript. Nenhum dado é transmitido para servidores. Você pode usar esta ferramenta mesmo offline.
Esta ferramenta executa código do meu input?
Não. O padrão é tratado como uma string e compilado pela engine de regex do JavaScript com new RegExp(). Nenhuma função eval() ou similar é usada. A única operação realizada é a correspondência de padrões contra o texto informado.