Como Usar o Explicador de Regex
Digite ou cole uma expressao regular no campo de entrada e a ferramenta imediatamente a decompoe em uma explicacao em portugues simples. Cada token na regex e identificado e descrito: classes de caracteres, quantificadores, ancoras, grupos, lookaheads e caracteres literais. O painel de estatisticas mostra o numero total de tokens, se o padrao contem grupos de captura e se usa quantificadores. A explicacao e atualizada em tempo real conforme voce digita, permitindo construir um padrao e ver como cada adicao muda o significado.
Esta ferramenta e especialmente util ao ler codigo regex de outra pessoa, depurar um padrao que nao corresponde conforme esperado ou aprender a sintaxe regex experimentando com diferentes tokens. Copie a explicacao para incluir como comentario no seu codigo-fonte, tornando padroes complexos compreensiveis para futuros mantenedores.
Tipos de Tokens em Expressoes Regulares
Expressoes regulares sao construidas a partir de varios tipos de tokens, cada um servindo a um proposito especifico. Entender esses blocos de construcao e a chave para ler e escrever padroes regex de forma eficaz. Embora a sintaxe possa parecer criptica a principio, ha apenas um punhado de conceitos fundamentais que se combinam para criar comportamentos de correspondencia complexos.
Classes de Caracteres e Abreviacoes
Classes de caracteres correspondem a um caractere de um conjunto definido. Colchetes definem classes personalizadas: [abc] corresponde a a, b ou c. Intervalos sao definidos com hifens: [a-z] corresponde a qualquer letra minuscula. Classes negadas usam um acento circunflexo: [^0-9] corresponde a qualquer coisa exceto um digito. Classes abreviadas fornecem padroes comuns: \d corresponde a qualquer digito (equivalente a [0-9]), \w corresponde a caracteres de palavra (letras, digitos, sublinhado), \s corresponde a espacos em branco (espaco, tabulacao, nova linha) e o ponto . corresponde a qualquer caractere exceto nova linha.
Quantificadores
Quantificadores controlam quantas vezes o token anterior deve aparecer. O quantificador + corresponde a uma ou mais vezes. O quantificador * corresponde a zero ou mais vezes. O quantificador ? corresponde a zero ou uma vez (opcional). Chaves especificam contagens exatas: {3} corresponde exatamente 3 vezes, {2,5} corresponde entre 2 e 5 vezes, e {3,} corresponde 3 ou mais vezes. Por padrao, quantificadores sao greedy (correspondem ao maximo possivel), mas adicionar ? apos eles os torna lazy (correspondem ao minimo possivel).
Ancoras e Limites
Ancoras nao correspondem a caracteres, mas sim a posicoes na string. O acento circunflexo ^ corresponde ao inicio da string (ou linha no modo multilinha). O cifrao $ corresponde ao fim. O limite de palavra \b corresponde a posicao entre um caractere de palavra e um caractere de nao-palavra, util para corresponder palavras inteiras sem capturar espacos ou pontuacao ao redor.
Grupos e Alternancia
Parenteses criam grupos que podem ser quantificados como uma unidade e opcionalmente capturam o texto correspondido. O padrao (abc)+ corresponde a uma ou mais repeticoes da sequencia "abc". O simbolo pipe | dentro de um grupo cria alternancia: (gato|cachorro) corresponde a "gato" ou "cachorro". Grupos de nao captura (?:...) fornecem agrupamento sem a sobrecarga de captura. Grupos nomeados (?<nome>...) atribuem um nome ao texto capturado para referencia mais facil no codigo.
Perguntas Frequentes
O que e regex?
Uma sequencia de caracteres que define um padrao de busca, usada em programacao para encontrar, corresponder, validar e manipular strings. Suportada por praticamente todas as linguagens de programacao.
Como leio uma expressao regular?
Leia da esquerda para a direita, identificando cada token: caracteres literais, classes de caracteres (\d, \w), quantificadores (+, *, ?), ancoras (^, $) e grupos (parenteses). Esta ferramenta automatiza esse processo.
O que sao grupos de captura?
Porcoes de um padrao entre parenteses que capturam texto correspondido para referencia posterior. Grupos de nao captura (?:...) agrupam sem capturar. Grupos nomeados (?<nome>...) permitem referencia por nome.
O que e correspondencia lazy vs greedy?
Quantificadores greedy (*, +) correspondem ao maximo possivel. Adicionar ? os torna lazy, correspondendo ao minimo possivel. Use correspondencia lazy para encontrar a menor correspondencia possivel.
O que sao lookaheads e lookbehinds?
Assercoes de largura zero que verificam um padrao sem inclui-lo na correspondencia. (?=...) e lookahead positivo, (?!...) e lookahead negativo, (?<=...) e lookbehind positivo, (?<!...) e lookbehind negativo.
Save your results & get weekly tips
Get calculator tips, formula guides, and financial insights delivered weekly. Join 10,000+ readers.
No spam. Unsubscribe anytime.