Testador de Regex
Testar e validar expressões regulares
Expressão regular
//
Texto de teste0 correspondências
Substituição (Opcional)
Resultados de correspondências
Digite o padrão regex para começar a correspondência
Padrões comuns
Referência de sintaxe
.Any character\dDigit\wWord char\sWhitespace^Start$End*0+ times+1+ times?0 or 1{n}n times[abc]Char set()Capture groupRecursos
Ferramenta profissional de teste de expressões regulares
Destaque em tempo real
Destaque em tempo real do conteúdo correspondente, exibição visual dos resultados de correspondência
Suporte a grupos de captura
Exibir conteúdo de grupos de captura para cada correspondência, conveniente para depurar regex complexos
Função de substituição
Suporta operações de substituição, pode usar $1, $2 para referenciar grupos de captura
Alternar sinalizadores
Alternar com um clique os sinalizadores g/i/m/s/u, controlar flexivelmente o comportamento de correspondência
Modelos comuns
Modelos regex comuns integrados para e-mail, telefone, URL, etc.
Privacidade e segurança
Todo o processamento é feito localmente no navegador, o conteúdo de teste nunca é carregado
Perguntas frequentes
Perguntas comuns sobre expressões regulares
O que fazem os sinalizadores em expressões regulares?
g (global): Correspondência global, encontrar todas as correspondências em vez de apenas a primeira. i (case-insensitive): Ignorar maiúsculas e minúsculas. m (multiline): Modo multilinha, ^ e $ correspondem ao início e ao fim de cada linha. s (dotAll): Fazer . corresponder a qualquer caractere incluindo quebras de linha. u (unicode): Habilitar modo Unicode, lidar corretamente com caracteres Unicode.
O que são grupos de captura? Como usá-los?
Partes entre parênteses () são capturadas e podem ser referenciadas na substituição usando $1, $2, etc. Por exemplo: regex (\d+)-(\d+) correspondendo a "2023-12" tem $1 como "2023" e $2 como "12". Substituir com $2/$1 resulta em "12/2023".
Qual é a diferença entre modo ganancioso e não ganancioso?
Modo ganancioso (padrão): Corresponder a tantos caracteres quanto possível. Por exemplo, a.*b corresponde a "axxbxxb" em "axxbxxb". Modo não ganancioso: Adicione ? após o quantificador para corresponder o mínimo possível. Por exemplo, a.*?b corresponde a "axxb" em "axxbxxb".
Como corresponder aos próprios caracteres especiais?
Caracteres especiais que precisam ser escapados: . * + ? ^ $ { } [ ] \ | ( ). Adicione uma barra invertida \ antes desses caracteres para corresponder ao próprio caractere. Por exemplo: para corresponder a "3.14" use 3\.14, para corresponder a "(test)" use \(test\)
Existem diferenças entre JavaScript e outras linguagens para regex?
Esta ferramenta usa o motor regex JavaScript, compatível com a maioria das linguagens, mas com diferenças sutis: • JavaScript não suporta algumas sintaxes para asserções lookbehind (versões mais recentes suportam) • Não suporta algumas sintaxes para grupos de captura nomeados • As letras de sinalizadores podem diferir ligeiramente (por exemplo, Python usa re.IGNORECASE). A sintaxe básica é universal em todas as linguagens.