Testador de Regex
Uma expressão regular (regex) é um padrão que descreve um conjunto de strings. Regex é usado em busca, válidação de texto, analise e operações de localizar e substituir em práticamente todas as linguagens de programação. Insira um padrão é uma string de teste abaixo para ver as correspondencias realçadas em tempo real, com grupos de captura e grupos nomeados extraıdos automaticamente.
Como Usar
- Digite um padrão regex no campo de padrão ou selecione uma predefinição (Email, URL, IPv4, etc.)
- Ative ou desative as flags conforme necessário. Global (g) esta ativada por padrão para que você veja todas as correspondencias
- Insira ou cole sua string de teste. As correspondencias são realçadas instantaneamente
- Clique em um cartão de correspondencia para expandir os detalhes do grupo de captura
- Copie o literal regex completo ou os valores de correspondencia individuais
Entendendo a Sintaxe Regex
Cada regex e construıdo a partir de dois tipos de partes: caracteres literais que correspondem a si mêsmos e metacaracteres que correspondem a padrões. O metacaractere \d corresponde a qualquer dıgito, \w a qualquer caractere de palavra (letras, dıgitos, sublinhado) e \s a espaço em branco. Quantificadores controlam repetição: + significa um ou mais, * significa zero ou mais, {3} significa exatamente tres e {2,5} significa entre dois e cinco.
Ancoras como ^ (inıcio da string) e $ (final da string) não consomem caracteres mas afirmam uma posição. Com a flag multilinha ativada, elas correspondem a limites de linha em vez disso. Lookaheads (?=...) e lookbehinds (?<=...) são asserções de largura zero que verificam um padrão sem incluı-lo na correspondencia.
Classes de caracteres [abc] correspondem a qualquer um dos caracteres listados. Intervalos como [a-z] correspondem a letras minusculas. Negação [^abc] corresponde a qualquer caractere exceto os listados.
Considerações de Desempenho
Certos padrões causam retrocessó catastrófico, onde o motor leva tempo exponencial em entradas que não correspondem. O exemplo classico e (a+)+$ testado contra uma string de ‘a’s sem final de linha. Evite quantificadores aninhados nos mêsmos caracteres. Se seu padrão demorar notavelmente, simplifique-o ou use grupos atomicos/quantificadores possessivos (não disponıveis no regex do JavaScript, mas alcançaveis por meio de reestruturação do padrão).
Precisa trabalhar com uma URL correspondida? Envie-a para o Codificador de URL para codificação. Se uma correspondencia retornar JSON, o Formatador JSON pode formatá-lo. Use o Verificador de Diferenças para comparar a saıda regex em diferentes strings de teste.