Entendendo Expressões Regulares
Expressão Regular (Regex) é uma forma de se especificar um padrão de
texto.
É um conjunto de símbolos e caracteres que agrupados formam uma sequência que pode ser testada em textos.
Por exemplo, se quero procurar as palavras “rato”, “gato” e “pato” em um determinado texto, é só criar a expressão regular [rgp]ato.
Conhecendo os metacaracteres:
Os metacaracteres são pequenos pedacinhos simples que agrupados entre si, ou com caracteres normais, formam algo maior, uma expressão. O importante é compreender bem cada um individualmente, e depois apenas lê−los em seqüência.
Eles servem para dar mais poder às pesquisas, informando padrões e posições impossíveis de se especificar usando somente caracteres normais.
O circunflexo ^
O circunflexo procura pela expressão no início.
^root – retornará a linha em que a palavra root aparece no comeco.
O cifrão $
O cifrão e justamente o contrario do circunflexo, ele preocura pela expressão no final.
$root – retornará a linha em que a palavra root aparece no final.
Os colchetes []
Os colchetes são usados pra listar opções.
[Gg]iordano – retornará todos os nomes giordano no texto, sendo maiúsculas ou minúscula.
As chaves {}
As chaves são utilizadas para indicar um número de caracteres.
A expressão ^.{20,40}$ retornará linhas que tenham entre 20 e 40 caracteres.
O ponto .
O ponto é um metacaractere que significa qualquer caractere.
A expressão ^[aeiou].*de Jesus retornará toda a linha que comece com vogal e termine com ‘de Jesus’.
O ou | (OR)
O pipe significa ou uma coisa ou outra.
A expressão ^(giordano|bruno) retornará as linhas em que esse nomes aparecem no comeco.
A lista negada[^]
Outro detalhe a respeito da lista e que voce pode colocar o caractere de negacao nela.
Se quizermos pegar todos os nomes comecados com consuantes nos fariamos a seguinte expressão:
^[bcdfghjklmnpqrstvwxyz]
Existe uma forma mais facil de fazer isso, usando a lista negada mudariamos a expressão para:
^[^aeiou]
Intervalo em Listas [-]
Mais uma facilidade em listas é usar o intervalo. Basta colocar um hífen entre duas letras que ele será expandido para todas as letras existentes no intervalo.
Por exemplo [a−f] é interpretado como “todas as letras entre a e f, inclusive”, ou seja “abcdef”.
Fonte: Conhecendo as Expressões Regulares – Aurélio Marinho Jargas
Tags: Expressões Regulares, Regex