Escolar Documentos
Profissional Documentos
Cultura Documentos
!!
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.
!!
!!
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
!!
!!
[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
!!
!!
?!!!! - 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,})
!!
<?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#