Conceitos básicos e Regex 101
Regex 101
Nesse tutorial, o site Regex 101 será abordado. Ele é uma ferramenta muito interessante para testar expressões regulares. Recomendamos que você a use para testar os exemplos dos tutoriais e para fazer seus próprios testes também.
O site tem um campo para a expressão regular e um campo para a string de teste. Ele também tem uma caixa de seleção que permite alternar entre expressões regulares de PCRE, Javascript, Python e golang:
Recomendamos que você escolha PCRE (Perl Compatible Regular Expressions), porque os exemplos dos tutoriais sempre usam essa engine. Perl é uma linguagem de programação onde as expressões regulares são muito valorizadas e influenciaram muitas outras linguagens e ferramentas.
Do lado direito do site, há uma seção que explica a expressão regular. Na seção abaixo, você pode ver informações sobre as strings que casaram com a sua expressão regular dentro da string de teste:
Perceba que a ferramenta destaca o texto que casa com a expressão regular, e passando o mouse sobre ele, você também pode ver algumas informações sobre a string que casa com a expressão.
Também há uma seção chamada Quick Reference, onde pode-se ver pequenas explicações sobre metacaracteres, metasequências e outros elementos das expressões regulares:
Perceba que, desde o início, a expressão regular tem alguns caracteres que não podem ser removidos. São duas barras e letras após a última barra. As barras não influenciam em nada na expressão regular. Já as letras são modifiers. Veja o tutorial de modifiers, se quiser saber mais detalhes sobre eles. Use e abuse das funcionalidades da ferramenta, para que você aprenda enquanto testa suas expressões regulares.
Conceitos básicos
Expressões regulares tem dois tipos de caracteres: literais e metacaracteres. Os literais são caracteres que não
tem nenhum significado especial. Exemplos: a
, b
, 7
e K
. Os
metacaracteres são caracteres que tem um significado especial para a expressão regular. Eles não representam o
caractere no sentido literal dele. Exemplos: ^
, +
e ?
. Em alguns
contextos, caracteres literais podem ser metacaracteres, e vice-versa.
Há também as metasequências, que são como metacaracteres, porém como contém mais de um caractere, são chamadas
de metasequências. Exemplos: \b
, \Z
e \d
. O significado desses
metacaracteres e metasequências não será explicado nesse tutorial. Isso é feito nos outros tutoriais.
Uma analogia interessante que pode ser feita para facilitar o entendimento desses conceitos em expressões regulares é com um idioma. Os caracteres literais e os metacaracteres podem ser associados com as palavras e com a gramática de um idioma, respectivamente.