Introdução

Termilogia

Você verá a sigla ER referenciando-se a Expressões Regulares, como também varias outas nomenclaturas que podem ser encontradas em outras fontes, como: expreg, regexp, regex e RE, Aqui simplismente sera usado ER para fazer referencia as expressões regulares.

Outro termo que é interessante ressaltar é o casar (“match”). Casamento aqui não é juntar os trapos, mas significa bater, conferir, combinar, igualar, encontrar, encaixar.

Também temos o padrão (“pattern”), que é nosso objetivo quando fazemos uma ER: examinar o texto e identificar as partes que casam com a especificação dada. Esse padrão pode ser uma palavra, várias, uma linha vazia, um número, ou seja, o que quer que precise ser encontrado pela nossa ER.

Onde utilizar regex?

As expressões regulares servem para uma infinidade de tarefas, pois elas são úteis sempre que inclui procura e substituição em textos puros ou linguagens de programação, também para a validação de formulários, realce de sintaxe e filtragem de informação, exemplos:

Metacaracteres

Uma expressão regular descreve um conjunto de cadeias de caracteres, de forma concisa, sem precisar listar todos os elementos do conjunto. Por exemplo, um conjunto contendo as cadeias “Handel”, “Händel” e “Haendel” pode ser descrito pelo padrão H(ä|ae?)ndel. Sei que você não entedeu bunufas!.

Já pra matar a curiosidade, aqui estão os metacaracteres-padrão que veremos adiante:

.     ?     *     ^     $     |      []     ()     {}     \

Cada simbolozinho desses tem sua função específica, que pode mudar dependendo do contexto no qual está inserido, e podemos agregá-los uns com os outros, combinando suas funções e fazendo construções mais complexas.

Se esforça pra decorar os nomes deles, por que eles vão fazer parte da sua vida. Eles estão divididos em quatro grupos distintos, de acordo com características comuns entre eles. Vamos examinar cada grupo separadamente.


Metacaractere Nome Função
. Ponto Um caractere qualquer
[...] Lista Lista de caracteres permitidos
[^...] Lista nagada Lista de caracteres proibidos


Metacaractere Nome Função
? Opcional Zero ou um
* Asterisco Zero, um ou mais
+ Mais Um ou mais
{n, m} Chaves De n até m


Metacaractere Nome Função
^ Circunflexo Início da linha
$ Cifrão Fim da linha
\b Borda Início ou fim de palavra


Metacaractere Nome Função
\c Escape Torna literal o caractere c
\| Ou Ou um ou outro
( ) Grupo Delimita um grupo
\1 ... \9 Retrovisor Textos casados nos grupos 1…9

Fonte Aurélio Marinho a autoridade máxima Brasileira a respeitos das Expressões Regulares.