Expressões Regulares

Como funcionam as expressões regulares?

Por em 13/10/2020

Enepédia

Se você trabalha com algum tipo de linguagem de programação, provavelmente já ouviu falar das expressões regulares.

A razão de eu afirmar isso é porque diversos softwares de edição de código permitem a utilização delas. Tanto o Brackets quanto o Notepad++, softwares que falamos bastante por aqui, são capazes de interpretá-las.

Mas afinal, o que são expressões regulares?

As chamadas RegEx são um padrão de caracteres usado para busca e substituição de conteúdo. Através delas, é possível encontrar padrões de texto a partir da associação de sequências de caracteres.

Em outras palavras, você pode, por exemplo, buscar por números de telefone diferentes em uma lista de uma só vez.

E como funciona?

Expressões regulares são como uma linguagem de programação, já que ela possui códigos padrões que possuem funcionalidades distintas.

Quando fazemos uma busca em um arquivo, colocamos exatamente o conteúdo que queremos encontrar. Porém, no caso das RegEx, definimos uma série de códigos para que o aplicativo encontre o conteúdo com base nas regras dele.

Vamos voltar ao exemplo dado mais acima, a busca por números de telefone. Em nosso canal no YouTube, tivemos um comentário falando justamente sobre isso.

Como visto na imagem acima, a dúvida era como buscar por números de telefone que se iniciavam com o sinal de +. Para fazer isso, seria necessário utilizar uma expressão regular. Dessa forma, esse foi o código que eu passei a ele:

[+]+\d{1,9}

Esta é uma RegEx simples e que pode ser dividida em duas partes:

  • [+]+: o código [+] indica que o software deve buscar especificamente pelo caractere +, enquanto que o sinal de + depois dos colchetes indica que deve buscar por 1 ou mais caracteres iguais ao que está dentro dos colchetes;
  • \d{1,9}: aqui temos o \d que indica a busca por números (0 a 9), assim como o {1,9} que indica quantos caracteres em sequência ele deve encontrar referente ao \d.

Há também expressões muito, mas muito complexas. Um bom exemplo é a que passei na videoaula de como encontrar conteúdo diferente da busca no Notepad++.

Confira alguns códigos de expressão regular

Nos exemplos acima, vimos apenas algumas expressões já montadas. Agora, é hora de vermos em detalhes algumas sintaxes de RegEx:

Cód. Descrição
. Busca por qualquer caractere, exceto quebras de linha.
^ Busca pela expressão no início do texto. Deve ser inserido antes da expressão a ser buscada.
$ Busca pela expressão no fim do texto. Deve ser inserido após a expressão a ser buscada.
* Busca pela expressão que se repita 0 ou mais vezes. Deve ser inserido após a expressão a ser buscada.
+ Busca pela expressão que se repita 1 ou mais vezes. Deve ser inserido após a expressão a ser buscada.
? Busca pela expressão que se repita 0 ou 1 vez. Deve ser inserido após a expressão a ser buscada.
[ ] Define quais caracteres devem ser buscados. Os caracteres devem ser inseridos entre os colchetes.
( ) Define quais caracteres devem ser buscados e os armazena em um grupo de captura. É possível chamar esse grupo posteriormente. Os caracteres devem ser inseridos entre os parênteses.
{ } Define a quantidade de caracteres a ser buscado. O número deve ser inserido entre as chaves.
\n Busca por uma quebra de linha.
\r Busca por um retorno de carro.
\t Busca por uma tabulação.
\s Busca por qualquer espaço em branco. Pode, inclusive, encontrar \n, \r e \t.
\S Busca por qualquer caractere que não seja um espaço em branco, inclusive \n, \r e \t.
\w Busca por letras (a/A a z/Z) e números (0 a 9). Também pode encontrar _.
\W Busca por caracteres que não sejam letras (a/A a z/Z), números (0 a 9) ou _.
\d Busca por números (0 a 9).
\D Busca por caracteres que não sejam números (0 a 9).
\b Busca por caracteres que antecedam ou sucedam um espaço em branco.
\B Busca por caracteres que não antecedam ou sucedam um espaço em branco.
Leia também »  O que são desenhos vetoriais?

Notou as letras maiúsculas? Sim, expressões regulares são case sensitive (diferenciam maiúsculas de minúsculas).

Enfim, essas são apenas algumas das várias sintaxes existentes. Se você quiser conhecer mais expressões regulares, dê uma lida nesse link da MDN no qual eles falam mais sobre o assunto.

Além disso, você também pode testar e aprender mais sobre RegEx no RegExr, site que permite emular expressões regulares.


Deu pra ter uma ideia de como funcionam as expressões regulares? Você pode ver mais conteúdo como esse seguindo nossas redes sociais ou inscrevendo-se em nossa newsletter mensal.

PUBLICIDADE