EfficTools Logo
EfficTools

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 group

Recursos

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.