ong>

 

Uma expressão regular, também chamada de RE ou REGEX, é uma ferramenta de pesquisa e substituição de textos extremamente sofisticada e amplamente utilizada. Usualmente, uma expressão regular é uma composição de caracteres e símbolos chamados meta-caracteres, cuja principal função é pesquisar um padrão conforme as condições fornecidas; nesse caso, diz-se que o texto encontrado “casou” com a expressão regular.

Muitas vezes, as expressões regulares são confundidas com caracteres curingas que normalmente utilizamos em pesquisas de arquivos, como por exemplo, “*.doc”. Na verdade, as expressões regulares também são capazes de realizar pesquisas desse tipo, no entanto, elas são imensamente mais poderosas do que isso, permitindo escolher se a expressão a ser pesquisada está no começo ou no final da linha, quais os caracteres são permitidos, quantas vezes a expressão deve se repetir, entre outros tipos de pesquisas.

O tema “Expressões regulares” é tratado com certo receio e, às vezes, deixado um pouco de lado pelos desenvolvedores Delphi, em virtude de que poucas pessoas conhecem o seu real potencial.

Esse cenário ocorre, provavelmente, pela interpretação errônea de que expressões regulares são usadas somente pelos administradores de sistemas Linux/Unix ou por desenvolvedores de linguagens de script, tais como Perl, Ruby, entre outras.

Além disso, ao nos depararmos pela primeira vez com as expressões regulares, a primeira reação é de rejeição e desconfiança; afinal, quem é capaz de entender essas expressões “esquisitas”, como podem ser vistas no código a seguir:

 

^[a-z]{1,8}\.[a-z]{1,3}$

 [_a-zA-Z\d\-\.]+@([_a-zA-Z\d\-]+(\.[_a-zA-Z\d\-]+)+)

(FTP|HTTP)://([_a-z\d\-]+(\.[_a-z\d\-]+)+)

 

Como discutido anteriormente, podemos destacar três cenários onde as expressões regulares são comumente utilizadas:

 

. Extração de dados: Normalmente, esse cenário ocorre quando desejamos exportar dados de sistemas legados para arquivos intermediários (XML, CSV, TXT);

 

. Pesquisa e substituição de textos: Esse recurso é notoriamente utilizado por administradores de sistemas para pesquisar informações específicas em arquivos de log ou para realizar modificações em lote de textos localizados nos arquivos de configurações do sistema;

 

. Validação de dados: Esse cenário é utilizado em aplicações Web ou aplicações convencionais para a validação de campos de entrada quando a utilização de máscaras de entrada não são o suficiente para a validação do dado digitado pelo usuário.

 

Meta-Caracteres

Assim como no aprendizado de uma língua estrangeira, você primeiro aprenderá o significado de cada palavra individualmente e, em seguida, aprenderá a unir essas palavras em frases mais complexas e coerentes no contexto de um diálogo. Seguindo essa técnica, o leitor poderá aprender a criar expressões regulares mais complexas e sofisticadas em virtude do completo entendimento de cada meta-caractere individualmente.

Cabe lembrar que, para você usufruir dos benefícios das expressões regulares, você deverá utilizar um “motor” de expressões regulares. Normalmente, esse motor já está integrado nas linguagens de programação atuais, caso contrário você poderá utilizar um motor de expressões regulares utilizando programas externos ou até mesmo bibliotecas criadas por terceiros. O motor de expressões regulares, dito em outros termos, é o compilador e interpretador das expressões regulares. Nesse caso, é ele quem analisa, interpreta e fornece os resultados que casaram com a expressão fornecida.

Para discutir esse assunto numa abordagem didática, os meta-caracteres serão identificados nas seções a seguir por seus respectivos mneumônicos e uma breve descrição. Além disso, você poderá ver alguns exemplos de utilização dos meta-caracteres e os seus casamentos possíveis.

 

Ponto ...

Quer ler esse conteúdo completo? Tenha acesso completo