Escolar Documentos
Profissional Documentos
Cultura Documentos
MUITO TEIS DEPOIS DE POUCO TEMPO, TUDO PARECE MAIS FCIL ASSUNTO CONSISTENTE, NO SOFRE GRANDES ALTERAS
NOMES...
EXPRESSES REGULARES EXPREG ER REGULAR EXPRESSIONS REGEX REGEXP
O QUE ?
SEGUNDO A WIKIPEDIA... (...) PROV UMA FORMA CONCISA E FLEXVEL DE IDENTIFICAR CADEIAS DE CARACTERES DE INTERESSE, COMO CARACTERES PARTICULARES, PALAVRAS OU PADRES DE CARACTERES.
POR EXEMPLO
Saqueto Sacketo Sacheto
Sachetto Sa(qu|ch|ck)ett?o
VRIAES POSSVEIS.
POR EXEMPLO
Endereo IP \d{1,3} \. \d{1,3} \. \d{1,3} \. \d{1,3} 255 . 180 . 45 . 80 192 . 168 . 120 . 55 300 . 400 . 500 . 600
POR EXEMPLO
Endereo IP
\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b
RESUMINDO...
VAMOS APRENDER!
.?*+^$|[]{}()\
UM EXEMPLO RPIDO
METACARACTERES
Metacaractere
. [] [^] ? * + {}
Nome
Ponto Lista Lista negada Opcional Asterisco Mais Chaves
Metacaractere
^ $ \b \ | () \1 $1
Nome
Cicunexo Cifro Borda Escape Ou Grupo Retrovisor
REPRESENTANTES
Metacaractere
.
Nome
Ponto
Funo
Um caracter qualquer Lista de caracteres permitidos Lista de caracteres proibidos
[...]
Lista
[^...]
Lista negada
QUANTIFICADORES
Metacaractere
? * + {n,m}
Nome
Opcional Asterisco Mais Chaves
Funo
Zero ou um Zero, um ou mais Um ou mais De n at m
NCORAS
Metacaractere
^
Nome
Circunexo
Funo
Incio da linha
Cifro
\b
Borda
OUTROS
Metacaractere
\+ | (...) \1...\9 $1...$9
Nome
Escape Ou Grupo Retrovisor
Funo
Torna o literal o caracter + Ou um ou outro Delimita um grupo Texto casado nos grupos 1...9
REPRESENTANTES
Metacaractere
.
Nome
Ponto
Funo
Um caracter qualquer Lista de caracteres permitidos Lista de caracteres proibidos
[...]
Lista
[^...]
Lista negada
PONTO
Expresso
n.o
Casa com
no, nao, ...
.eclado
e.tendido
PONTO
Expresso Casa com
12.45
<.>
REPRESENTANTES
Metacaractere
.
Nome
Ponto
Funo
Um caracter qualquer Lista de caracteres permitidos Lista de caracteres proibidos
[...]
Lista
[^...]
Lista negada
LISTA
Expresso
n[a]o [Tt]eclado e[sx]tendido 12[:. ]45 <[pib]>
Casa com
no, nao Teclado, teclado estendido, extendido 12:45, 12.45, 12 45 <p>, <i>, <b>
LISTA
Expresso
n[a]o [Tt]eclado e[sx]tendido 12[:. ]45 <[pib]>
Casa com
no, nao Teclado, teclado estendido, extendido 12:45, 12.45, 12 45 <p>, <i>, <b>
LISTA
Expresso
Casa com
<[PIBpib]>
LISTA
O que eu preciso
Expresso
Um nmero qualquer
[0123456789]
LISTA
O que eu preciso
Expresso
[0123456789][0123456789]:[0123...
D PRA MELHORAR?
INTERVALOS!
LISTA
O que eu preciso
Expresso
[0-9][0-9]:[0-9][0-9]
LISTA
O que eu preciso
Expresso
[012][0-9]:[0-5][0-9]
LISTA
Expresso
A-z A-Za-z A-Za-z0-9
Casa com
Um monte de coisas Letras maiusculas e minusculas Letras maiusculas e minusculas e ainda nmeros
REPRESENTANTES
Metacaractere
.
Nome
Ponto
Funo
Um caracter qualquer Lista de caracteres permitidos Lista de caracteres proibidos
[...]
Lista
[^...]
Lista negada
LISTA NEGADA
Expresso Casa com
[^0-9]
a, b, c, %, #, $, ...
[:;,.!?][^ ]
QUANTIFICADORES
Metacaractere
? * + {n,m}
Nome
Opcional Asterisco Mais Chaves
Funo
Zero ou um Zero, um ou mais Um ou mais De n at m
fala[r!]?
OPCIONAL
Expresso Casa com
fala[r!]?
</?[pib]>
QUANTIFICADORES
Metacaractere
? * + {n,m}
Nome
Opcional Asterisco Mais Chaves
Funo
Zero ou um Zero, um ou mais Um ou mais De n at m
ASTERISCO
Expresso
7*0
Casa com
0, 70, 770, ..., 7777777777777770, ...
bi*p
b[ip]*
ASTERISCO
Expresso
Casa com
</?[bip] *>
>, ...
GULODICE! ? * + {}
ASTERISCO
Expresso
Casa com
[ar]*a
a ara arara
CORINGA! .*
QUANTIFICADORES
Metacaractere
? * + {n,m}
Nome
Opcional Asterisco Mais Chaves
Funo
Zero ou um Zero, um ou mais Um ou mais De n at m
MAIS
Expresso
7+0
Casa com
70, 770, ..., 7777777777777770, ...
bi+p
b[ip]+
QUANTIFICADORES
Metacaractere
? * + {n,m}
Nome
Opcional Asterisco Mais Chaves
Funo
Zero ou um Zero, um ou mais Um ou mais De n at m
CHAVES
Metacaractere
{1,3} {3,} {0,3} {3} {1} {0,1} {0,} {1,}
Repeties
De 1 3 Pelo menos 3 (3 ou mais) At 3 Exatamente 3 Exatamente 1 Zero ou 1 Zero ou mais Um ou mais
? * +
NCORAS
Metacaractere
^
Nome
Circunexo
Funo
Incio da linha
Cifro
\b
Borda
NCORAS
Expresso
^abc
Casa com
abcdef...
xyz$
...uvwxyz
s\b
OUTROS
Metacaractere
\+ | (...) \1...\9 $1...$9
Nome
Escape Ou Grupo Retrovisor
Funo
Torna o literal o caracter + Ou um ou outro Delimita um grupo Texto casado nos grupos 1...9
OUTROS
Expresso
lua\* gato|pato|rato (\d{1,3}.?){4} (.*)
Casa com
lua* gato, pato, rato 200.135.40.30, \1 8.8.8.8
texto texto
OUTROS
Expresso
1\+2\? bom-dia|boa-tarde (www\.)?bioritmo.com.br \d{1,3}.\d{1,3}.\d{1,3}.(\d{1,3})
Casa com
1+2? bom-dia, boa-tarde www.bioritmo.com.br bioritmo.com.br 192.168.0.5 \1 5
METACARACTERES MODERNOSOS
UM PONTO NEGATIVO...
CONCLUSO
APRENDER EXPRESSES REGULARES COMO O ALFABETO... VOC APRENDER PRIMEIRO AS LETRAS INDIVIDUALMENTE. DEPOIS AS SLABAS, AS PALAVRAS, FRASES E FINALMENTE OS TEXTOS. MAS NO FUNDO, SO APENAS LETRAS!
REFERNCIAS
REFERNCIAS
http://rubular.com/
JABA MODE=ON
REFERNCIAS
https://github.com/lucascaton/rugex
OBRIGADO!
DVIDAS?