Login:

iMasters | Por uma internet mais criativa e dinâmica

Feeds

MySQL

Feed da seção MySQL

Newsletter de MySQL


Segunda-feira, 09/06/2003 - 01:59 - Por Marcos Ethur
Seções relacionadas:

Utilizando a função REGEXP / RLIKE do MySQL

Em primeiro lugar, gostaria de agradecer à equipe iMasters, a confiança em meu trabalho e pelo espaço dado à esta coluna de MySQL. Espero corresponder à confiança e, principalmente, agradar ao grande público desse site.

O MySQL é um gerenciador de banco de dados relacionais moderno, rápido, poderoso e, vale a pena lembrar, gratuito. A comunidade que desenvolve o MySQL tem despendido muitos esforços, nesses últimos anos, para torná-lo cada vez melhor e com mais funcionalidades. Fruto desse esforço, temos hoje vários recursos que vão, desde novas funções e recursos até a interfaces gráficas extremamente fáceis de usar, como por exemplo o MySQL Front.

Nesta primeira coluna, irei abordar a função REGEXP ou RLIKE do MySQL. Muitos usuários do MySQL utilizam a função LIKE, que é mais conhecida. Só que a função REGEXP possui mais recursos, tais como verificar se uma string contém um determinado caracter ou se contém uma determinada seqüência. O resultado da busca retornará ‘1’ para verdadeiro e ‘0’ para falso. A sintaxe genérica do REGEXP é:

string REGEXP string_de_busca

Veja, agora, alguns exemplos de utilização da função REGEXP:

SELECT ‘Marcus Batista Ethur’ REGEXP ‘^M’;

No exemplo acima, o ‘ ^ ’ é o responsável por delimitar a busca no início da string. Note que o ‘1’ é exibido, porque o registro existe.

É possível utilizar vários caracteres especiais nas strings de busca do REGEXP, veja abaixo alguns exemplos:

- ^ – faz a busca no início da string;

- $ – faz a busca no fim da string;

- . – procura qualquer caractere;

- ( ) – delimita uma seqüência de caracteres para busca;

- {} – delimita o número de caracteres para busca. Aceita duas sintaxes: {n} ou {n, m}, em que {n} procura uma quantidade específica de caracteres e {n, m} já o {n} procura uma quantidade específica de caracteres e {n, m} procura, no mínimo, n e, no máximo, m caracteres. Lembrando que, nesse caso, o m tem que ser maior que o n.

- [ ] – os colchetes servem para delimitarmos os tipos de caracteres que vão ser buscados. Por exemplo, [a-z] procura somente caracteres alfabéticos, enquanto que [0-9] procura somente caracteres numéricos. Nesse caso, ainda é possível utilizar o caracter ^ para negar a busca. Um exemplo, nesse caso, seria [^a-z] que procurará caracteres que não sejam alfabéticos.

Futuramente, nesta coluna, haverá outros exemplos de caracteres especiais para uso em buscas do REGEXP.

Veja agora outros dois casos de utilização do REGEXP:

SELECT ‘Marcus Batista Ethur’ REGEXP ‘^Mar....Bat.....Eth..$’;

SELECT ‘Marcus Batista Ethur’ REGEXP ‘^Ma..us$;

Note que, no primeiro caso, a busca retorna o valor 1 – para verdadeiro, no caso, um registro existente; enquanto que a segunda consulta retorna o valor 0 – para falso, ou seja, o registro, conforme os parâmetros especificados, não existe. O sinal $ faz a busca até o final da string, enquanto que o . marca a existência de um determinado caracter, nesse caso também utilizado para mostrar o posicionamento correto das letras a seguir.

Espero que esse artigo tenha sido útil.

Todos os artigos de Marcos Ethur

2 comentários publicados

  • 1. $ Variavel

    Segunda-feira, 09/08/2004, por Joao

    Usando a $ nos comando sql + PHP, não poderá dar conflito, achando que o $ é uma variavel?

    Responder comentário
  • 2. mtu bom

    Domingo, 25/06/2006, por Rafael Araujo

    finalmente intendi como funciona expressoes regulares e di quebra pra usa em uma query...
    mtu bom :)

    Responder comentário

Poste um comentário


Os textos publicados neste espaço são de responsabilidade única de seus autores (colunistas e leitores) e podem não expressar necessariamente a opinião do iMasters.

Sobre o autor

Marcos Ethur é pós-graduado em Informática, professor técnico e trabalha com MySQL dese 2000.


Indique para um amigo

captcha

TI SHOP Produtos iMasters

  • Lançamento: CD-ROM Treinamento Aplicado de SQL - Lançamento! Treinamento Aplicado de SQL - Aprenda a trabalhar com SQL com bancos de dados Oracle e SQL Server. São mais de 100 tópicos explicados por Mauro Pichilliani, um articulistas mais lidos do iMasters. Aproveite! Apenas R$ 69,90 no TI SHOP.
  • Lançamento: Livro iMasters "O Encontro de 2 Mundos"- Este livro conta com 56 crônicas de profissionais mais admirados e influentes do mercado brasileiro de Internet. Aproveite o preço especial para leitores do iMasters. Apenas R$ 40,00 e envio imediato!
  • DVD Curso Completo de Photoshop - Do conceito à finalização Lançamento! Curso Completo de Photoshop, em DVD, com mais de 230 aulas dividas em 4 módulos: conceito, básico, avançado e finalização. Apenas R$ 69,50 no TI SHOP - Frete com 50% de desconto
  • DVD Javascript Starter - Curso Completo Com mais de 9 horas de vídeo-aulas, é um curso completo sobre Javascript. Ideal para quem deseja aprender a linguagem. Apenas R$ 64,90 no TI SHOP - Frete com 50% de desconto!

2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.