Atenção: esse artigo tem um vídeo complementar. Clique e assista!

De que se trata o artigo

Este artigo aborda uma introdução ao recurso de Expressões Regulares, demonstrando também como utilizar o mesmo nas aplicações criadas no Delphi XE 2, para e efetuar validações de acordo com expressões, pesquisar palavras de uma maneira rápida e simplificada, e a substituir termos em textos.

Em que situação o tema é útil

Facilitar e aumentar a produtividade no desenvolvimento de aplicações que necessitem validar as informações presentes nos campos preenchidos pelos usuários, apresentando também uma alternativa para ser utilizada em aplicações que trabalham com edição de texto, facilitando a busca e substituição de palavras.

Expressões Regulares

Na área da informática existem diversos padrões e conceitos que podem ser utilizados para facilitar e agilizar determinadas tarefas que fazem parte do cotidiano dos desenvolvedores. O recurso de Expressões Regulares é baseado na utilização de um padrão pré-definido para o reconhecimento de um determinado trecho em um texto ou campo, bem como para a validação do conteúdo do mesmo de uma maneira objetiva, onde o desenvolver apenas necessita ter uma familiarização com os símbolos ou objetos utilizados para a elaboração do padrão e dos objetos e eventos necessários para a implementação do mesmo através do Delphi. Neste artigo, primeiramente é apresentada uma introdução aos símbolos e caracteres utilizados na elaboração das expressões. Posteriormente, são desenvolvidos diversos exemplos em Delphi para validar informações, pesquisar e substituir palavras em textos de uma maneira bem simplificada, utilizando o recurso de RegEx.

Desde muito tempo atrás, a utilização de Expressões Regulares, também conhecidas como RegEx (Regular Expression), é muito aplicada e presente no cenário da informática, nos mais diversos softwares e ferramentas presentes no dia-a-dia das pessoas, uma vez que podem aumentar a produtividade e facilitar a vida de desenvolvedores. Muitas vezes o usuário pode ter contato com este recurso e nem se dar conta, principalmente ao utilizar uma aplicação de busca ou através de um website na Internet, quando efetua o preenchimento de seus dados nos formulários, onde campos como o email são checados.

A expressão regular é constituída de um conjunto de caracteres ou elementos combinados, também conhecidos como metacaracteres, que formam um padrão pré-estabelecido que pode ser aplicado para a obtenção de determinada informação de acordo com o mesmo, onde o termo “casamento” também pode ser adotado, que em outras palavras significa que a informação está de acordo com o padrão apresentado. Sendo assim, através da utilização de uma expressão regular é possível efetuar buscas mais objetivas, substituir palavras em um texto, efetuar uma validação das informações fornecidas, entre outros recursos.

O conceito de Expressões Regulares não é uma particularidade de determinada linguagem ou ambiente operacional, mas sim um recurso que pode ser adotado nas mais diversas plataformas e ferramentas para desenvolvimento, como é o caso do Delphi XE 2, onde tal recurso foi incorporado a partir da versão XE.

A expressão regular normalmente é formada por vários processos. Um deles muito utilizado é a alternância, que consiste na utilização de barra vertical “|” para separar os valores que podem ser assumidos, agindo como a função de “ou”, em outras palavras, quando é informado o valor “verdadeiro|verdadeira”, os valores “verdadeiro” ou “verdadeira” podem ser considerados válidos. Outro processo também muito adotado é a utilização de agrupamento, que é obtido através do uso dos parênteses “( )”. Sendo assim, ao informar a expressão “verdadeir(o|a)s”, os valores “verdadeiros” ou “verdadeiras” podem ser considerados válidos. Para concluir a estrutura básica que pode compor uma expressão regular, outro processo que pode ser aplicado é o da repetição, indicando assim o número de vezes que determinado padrão pré-estabelecido pode existir. Os símbolos *, + e ? são os identificadores mais utilizados e comuns para determinar a quantificação. O símbolo * determina que pode existir nenhuma, uma ou várias ocorrências do elemento que o precede, ou seja, se a expressão “go*l” for fornecida, os valores gl, gol, goooooool, etc, podem ser admitidos. Já o símbolo + também implica que determinado elemento precedente pode ter várias ocorrências, porém deve haver pelo menos uma, sendo assim, se o elemento for a expressão “go+l”, os valores admitidos serão gol, gool, goooool, etc. Com relação ao símbolo ?, o mesmo indica que pode haver apenas uma ou nenhuma ocorrência do termo precedente, ou seja, se utilizada a expressão “go?l”, os valores gl e gol seriam válidos. Evidentemente todos estes processos podem ser combinados entre si para que o objetivo possa ser atingido e assim formarem expressões mais complexas.

Como é possível observar, as Expressões Regulares possuem vários símbolos que devem ser utilizados de acordo com a necessidade em questão.

Expressões regulares e seus caracteres e o Delphi XE 2

Como mencionado anteriormente, o recurso de Expressões Regulares foi incluído no Delphi a partir da versão XE, porém existem diversos componentes de terceiros que podem ser instalados e utilizados em versões anteriores da ferramenta. O objeto mais comum responsável pelo recurso de Expressões Regulares no Delphi XE 2 é denominado TRegEx e está presente na Unit System.RegularExpressions. O TRegEx é um registro que utiliza funções que pertencem á classe TPerlRegEx, que por sua vez faz uso da PCRE (Perl Compatible Regular Expressions), uma biblioteca de código fonte aberto desenvolvida na linguagem C que foi inspirada na semântica e sintaxe da linguagem de programação Perl, cujo o objetivo é oferecer diversas funções para a implementação do recurso de Expressões Regulares em vários ambientes.

...
Quer ler esse conteúdo completo? Tenha acesso completo