Você está na página 1de 22

Alexandre Costa Araujo

!!

Uma expresso regular, na Informtica, define um padro a ser usado para procurar ou substituir palavras ou grupos de palavras. um meio preciso de se fazer buscas de determinadas pores de texto.

!!

Por exemplo, se o conjunto de palavras for {asa, carro, jardim, ovos, terra} e a expresso regular buscar por um padro rr, obter as palavras carro e terra.

!!

As Expresses Regulares, so um mtodo rpido e simples de manipulao e combinao avanada de strings.

!!

Vamos partir do princpio! Uma expresso regular essencialmente um padro. com base nesse padro que a expresso em questo ser avaliada. Primeiro vamos aprender a sintaxe das expresses para depois aprender como faz-las funcionar

!!

Este o primeiro operador que vamos aprender. O ^ indica que a expresso deve iniciar com a string dada. ^era Esta sintaxe ir definir que a string dada dever comear com era. No caso, era uma vez seria uma string concordante. Porm, se voc tentar Ele era triste, no obter sucesso.

!! !!

!!

J que temos o operador para definir o comeo, temos que ter um para definir o final tambm! Com $ ns definimos a string que dever conincidir com o final. fim$ Esta sintaxe ir definir que a string dada dever terminar com fim. Tentando validar a string E nunca ter fim obteremos sucesso, o que no acontecer com a string O fim est prximo.

!!

!!

!!

Classes de caracteres so uma espcie de grupo que contm todas as ocorrncias que devero (ou no devero) constar em uma expresso

!!

Por exemplo Para permitir apenas letras vogais, usaramos:

!!

[AaEeIiOoUu]

!!

Ento com este cdigo teramos um padro que s permitir que apenas vogais estejam na string dada.

Vamos agora aprender intervalo de caracteres !! [a-z]!!!! - Qualquer letra minscula !! [A-Z]!!!! - Qualquer letra maiscula !! [a-zA-Z] - Qualquer letra maiscula ou minscula !! [0-9]!!!!! -! Qualquer nmero !! [0-9.-] - Qualquer nmero, ponto ou sinal de subtrao
!!

!!

Bom Tudo muito legal, muito simples Mas isto serve apenas para combinao de UM caractere.

^[a-z][0-9]$ !! Neste caso teramos uma expresso de apenas dois caracteres em que o primeiro tem necessariamente que ser uma letra minscula e o segundo ser um nmero
!!

!!

Agora vamos aprender outra funo para o operador ^. Fora de uma classe de caracteres, ele serve para demonstrar o que deve haver no incio, porm dentro, ele serve para mostrar o que no deve ocorrer.

^[^0-9][0-9]$ !! Aqui ns definimos que a expresso deve comear com um caractere que no seja um nmero e seja imediatamente seguido por um caractere que ser um nmero!
!!

!!

Para evitar chateao, foram criadas as classes de caracteres pr-definidas que j vm junto com o interpretador de ER que voc estiver utilizando (lembrando que esto presentes apenas no mtodo POSIX).

!! !! !! !! !! !! !! !!

[[:alpha:]] // Qualquer letra (alfabtico) [[:digit:]] // Qualquer nmero (dgito) [[:alnum:]] // Qualquer letra ou nmero (alfanumrico) [[:space:]] // Qualquer caractere de espao [[:upper:]] // Qualquer letra mauscula [[:lower:]] // Qualquer letra minscula [[:punct:]] // Qualquer caractere de pontuao [[:xdigit:]] // Qualquer dgito hexadecimal (Equivalente a: [0-9a-fA-F])

!!

Agora vamos pra parte em que realmente comea a fazer sentido usar-se expresses regulares.

^[[:alpha:]]{3}$ // Qualquer palavra de trs letras !! ^a{4}$ // S fecha com a expresso 'aaaa' !! ^a{2,4}$ // Fecha com 'aa', 'aaa' e 'aaaa' !! ^a{2,}$ // Fecha com 'aa', 'aaa', 'aaaa', 'aaaaa' e assim por diante
!!

!!

H outros modos de representar a repetio de caracteres!

?!!!! - Uma ocorrncia ou nenhuma (Equivale a {0,1}) !! *!!!! - Nenhuma ocorrncia, uma ocorrncia, duas ocorrncias e por a vai (Equivale a {0,}) !! +!!!! - Uma ou mais ocorrncias (Equivale a {1,})
!!

. Qualquer caractere !! \\ Uma barra invertida literal !! \- - Um hfen literal


!!

<?php ! $email = 'mario@gmail.com'; $padrao = /^(.+)@(.+).(.+)$/"; ! if (preg_match($padrao,$email)) { !!!!print 'Seu email passou na validacao'; } else { !!!!print 'Seu email nao passou na validacao'; } ! ?>

!!

http://tools.lymas.com.br/regexp_br.php#

Você também pode gostar