SlideShare uma empresa Scribd logo
Expressões Regulares
Lourdilene Souza

lourdilene.souza@gmail.com
 “Uma expressão regular traduz um
conjunto de padrões, possivelmente
complicados e difíceis, pela sua
dimensão, de enumerar, numa expressão
de dimensão curta e, relativamente fácil
de interpretar.”
Aurelio Marinho Jargas
Expressões Regulares
 Representantes
Os metacaracteres
Meta Mnemônico Função Exemplos Valores possíveis
. ponto Um caractere
qualquer
.eclado Teclado, teclado,
zeclado, ...
[...] lista Lista de caracteres
permitidos
[Tt]eclado Teclado, teclado
[^...] Lista negada Lista de caracteres
proibidos
wifi[^1-2] wifi3, wifi333, wifi4,
wifi44567, ...
 Quantificadores
Os metacaracteres
Meta Mnemônico Função Exemplos Valores possíveis
? opcional Zero ou um códigos? código, códigos
* asterisco Zero, um ou mais mu*ito mito, muito, muuito,
muuuito, ...
+ mais Um ou mais mu+ito muito, muuito,
muuuito, ...
{n, m} chaves De n até m mu{0, 1}ito mito, muito
 Âncoras
Os metacaracteres
Meta Mnemônico Função Exemplos Valores possíveis
^ circunflexo início da linha ^lu l&$o/#)*894578...
$ cifrão fim da linha lu$ ...@&$o/#)*99457lu
b borda Início ou fim de
palavra
bdia dia, diafragma, bom-
dia!
Os metacaracteres
Meta Mnemônico Função Exemplos Valores possíveis
. escape Torna literal o
caractere .
[0-9].[0-9]{3}.
[0-9]{3}-[0-9]
2.222.222-2,
9.999.999-9, ...
| ou Ou um ou outro Bom dia|Boa
tarde
Bom dia, Boa tarde
(...) grupo Delimita um grupo (.[0-9]){3} .0.6.2, .2.8.9, .6.6.6,
...
1...9 retrovisor Texto casado nos
grupos 1..9
((((a)b)c)d)-1 =
1,2,3,4
abcd-1 =
abcd,abc,ab,a
 Data no formato dd/mm/aaaa
 ^(0[1-9]|[12][0-9]|3[01])/(0[1-9]|1[012])/[12][0-9]{3}$
 Hora no formato hh:mm
 ^([01][0-9]|2[0-3]):[0-5][0-9]$
Exemplos
 Email
 ^[A-Za-z0-9_.-]+@([A-Za-z0-9_]+.)+[A-Za-z]{2,4}$
 Numeros
 ^[-+]?[0-9]{1,3}(.[0-9]{3})?(,[0-9]{2})?$
Exemplos
<?php
$hora = "08:30";
$er = "([01][0-9]|2[0-3]):([0-5][0-9])";
if (ereg($er, $hora, $matriz))
{
echo "Na AIT, nossa retrô começou às $matriz[1] horas e ";
echo "$matriz[2] minutos.n";
}
?>
Exemplo PHP
Na AIT, nossa retrô começou às 08 horas e 30 minutos.
 RegexPal - http://regexpal.com/
 Testador de Expressões Regulares -
http://alessandrosantos.com.br/lab/er/
 Rubular - http://www.rubular.com/
 RegExr - http://gskinner.com/RegExr/
 Regex - http://regex.larsolavtorvik.com/
Testadores Online
 Portal brasileiro de expressões regulares
http://aurelio.net/regex/
Referências
 Obrigada.
facebook.com/ait-proeg
slideshare.net/aitproeg

Mais conteúdo relacionado

Mais de COTIC-PROEG (UFPA)

LT - Redis
LT - RedisLT - Redis
LT - Redis
COTIC-PROEG (UFPA)
 
LT Ansible
LT AnsibleLT Ansible
LT Ansible
COTIC-PROEG (UFPA)
 
Testes automatizados com Cypress
Testes automatizados com CypressTestes automatizados com Cypress
Testes automatizados com Cypress
COTIC-PROEG (UFPA)
 
WATSON - O Fascinante Computador da IBM
WATSON - O Fascinante Computador da IBMWATSON - O Fascinante Computador da IBM
WATSON - O Fascinante Computador da IBM
COTIC-PROEG (UFPA)
 
Produtividade sem enrrolação
Produtividade sem enrrolaçãoProdutividade sem enrrolação
Produtividade sem enrrolação
COTIC-PROEG (UFPA)
 
LAB JavaScript
LAB JavaScriptLAB JavaScript
LAB JavaScript
COTIC-PROEG (UFPA)
 
Principios e Valores Ágeis
Principios e Valores ÁgeisPrincipios e Valores Ágeis
Principios e Valores Ágeis
COTIC-PROEG (UFPA)
 
Big data
Big dataBig data
Metricas para Times Ágeis
Metricas para Times ÁgeisMetricas para Times Ágeis
Metricas para Times Ágeis
COTIC-PROEG (UFPA)
 
Aplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPA
Aplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPAAplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPA
Aplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPA
COTIC-PROEG (UFPA)
 
Técnicas para Programação em Par
Técnicas para Programação em ParTécnicas para Programação em Par
Técnicas para Programação em Par
COTIC-PROEG (UFPA)
 
Feedback Canvas
Feedback CanvasFeedback Canvas
Feedback Canvas
COTIC-PROEG (UFPA)
 
5 Doenças do Gerenciamento de Projetos
5 Doenças do Gerenciamento de Projetos5 Doenças do Gerenciamento de Projetos
5 Doenças do Gerenciamento de Projetos
COTIC-PROEG (UFPA)
 
Restrospectiva ágil
Restrospectiva ágilRestrospectiva ágil
Restrospectiva ágil
COTIC-PROEG (UFPA)
 
Ponta pé inicial para uma melhoria
Ponta pé inicial para uma melhoriaPonta pé inicial para uma melhoria
Ponta pé inicial para uma melhoriaCOTIC-PROEG (UFPA)
 
Gestão Ágil de Riscos
Gestão Ágil de Riscos Gestão Ágil de Riscos
Gestão Ágil de Riscos
COTIC-PROEG (UFPA)
 
Boas Práticas de Programação
Boas Práticas de ProgramaçãoBoas Práticas de Programação
Boas Práticas de ProgramaçãoCOTIC-PROEG (UFPA)
 
Lab metodologia
Lab metodologiaLab metodologia
Lab metodologia
COTIC-PROEG (UFPA)
 
Ait agile
Ait agileAit agile
Ur ls amigáveis (friendly urls)
 Ur ls amigáveis (friendly urls) Ur ls amigáveis (friendly urls)
Ur ls amigáveis (friendly urls)
COTIC-PROEG (UFPA)
 

Mais de COTIC-PROEG (UFPA) (20)

LT - Redis
LT - RedisLT - Redis
LT - Redis
 
LT Ansible
LT AnsibleLT Ansible
LT Ansible
 
Testes automatizados com Cypress
Testes automatizados com CypressTestes automatizados com Cypress
Testes automatizados com Cypress
 
WATSON - O Fascinante Computador da IBM
WATSON - O Fascinante Computador da IBMWATSON - O Fascinante Computador da IBM
WATSON - O Fascinante Computador da IBM
 
Produtividade sem enrrolação
Produtividade sem enrrolaçãoProdutividade sem enrrolação
Produtividade sem enrrolação
 
LAB JavaScript
LAB JavaScriptLAB JavaScript
LAB JavaScript
 
Principios e Valores Ágeis
Principios e Valores ÁgeisPrincipios e Valores Ágeis
Principios e Valores Ágeis
 
Big data
Big dataBig data
Big data
 
Metricas para Times Ágeis
Metricas para Times ÁgeisMetricas para Times Ágeis
Metricas para Times Ágeis
 
Aplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPA
Aplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPAAplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPA
Aplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPA
 
Técnicas para Programação em Par
Técnicas para Programação em ParTécnicas para Programação em Par
Técnicas para Programação em Par
 
Feedback Canvas
Feedback CanvasFeedback Canvas
Feedback Canvas
 
5 Doenças do Gerenciamento de Projetos
5 Doenças do Gerenciamento de Projetos5 Doenças do Gerenciamento de Projetos
5 Doenças do Gerenciamento de Projetos
 
Restrospectiva ágil
Restrospectiva ágilRestrospectiva ágil
Restrospectiva ágil
 
Ponta pé inicial para uma melhoria
Ponta pé inicial para uma melhoriaPonta pé inicial para uma melhoria
Ponta pé inicial para uma melhoria
 
Gestão Ágil de Riscos
Gestão Ágil de Riscos Gestão Ágil de Riscos
Gestão Ágil de Riscos
 
Boas Práticas de Programação
Boas Práticas de ProgramaçãoBoas Práticas de Programação
Boas Práticas de Programação
 
Lab metodologia
Lab metodologiaLab metodologia
Lab metodologia
 
Ait agile
Ait agileAit agile
Ait agile
 
Ur ls amigáveis (friendly urls)
 Ur ls amigáveis (friendly urls) Ur ls amigáveis (friendly urls)
Ur ls amigáveis (friendly urls)
 

Último

Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Gabriel de Mattos Faustino
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
Faga1939
 
Guardioes Digitais em ação: Como criar senhas seguras!
Guardioes Digitais em ação: Como criar senhas seguras!Guardioes Digitais em ação: Como criar senhas seguras!
Guardioes Digitais em ação: Como criar senhas seguras!
Jonathas Muniz
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
Danilo Pinotti
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 

Último (6)

Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
 
Guardioes Digitais em ação: Como criar senhas seguras!
Guardioes Digitais em ação: Como criar senhas seguras!Guardioes Digitais em ação: Como criar senhas seguras!
Guardioes Digitais em ação: Como criar senhas seguras!
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 

Expressões Regulares

  • 2.  “Uma expressão regular traduz um conjunto de padrões, possivelmente complicados e difíceis, pela sua dimensão, de enumerar, numa expressão de dimensão curta e, relativamente fácil de interpretar.” Aurelio Marinho Jargas Expressões Regulares
  • 3.  Representantes Os metacaracteres Meta Mnemônico Função Exemplos Valores possíveis . ponto Um caractere qualquer .eclado Teclado, teclado, zeclado, ... [...] lista Lista de caracteres permitidos [Tt]eclado Teclado, teclado [^...] Lista negada Lista de caracteres proibidos wifi[^1-2] wifi3, wifi333, wifi4, wifi44567, ...
  • 4.  Quantificadores Os metacaracteres Meta Mnemônico Função Exemplos Valores possíveis ? opcional Zero ou um códigos? código, códigos * asterisco Zero, um ou mais mu*ito mito, muito, muuito, muuuito, ... + mais Um ou mais mu+ito muito, muuito, muuuito, ... {n, m} chaves De n até m mu{0, 1}ito mito, muito
  • 5.  Âncoras Os metacaracteres Meta Mnemônico Função Exemplos Valores possíveis ^ circunflexo início da linha ^lu l&$o/#)*894578... $ cifrão fim da linha lu$ ...@&$o/#)*99457lu b borda Início ou fim de palavra bdia dia, diafragma, bom- dia!
  • 6. Os metacaracteres Meta Mnemônico Função Exemplos Valores possíveis . escape Torna literal o caractere . [0-9].[0-9]{3}. [0-9]{3}-[0-9] 2.222.222-2, 9.999.999-9, ... | ou Ou um ou outro Bom dia|Boa tarde Bom dia, Boa tarde (...) grupo Delimita um grupo (.[0-9]){3} .0.6.2, .2.8.9, .6.6.6, ... 1...9 retrovisor Texto casado nos grupos 1..9 ((((a)b)c)d)-1 = 1,2,3,4 abcd-1 = abcd,abc,ab,a
  • 7.  Data no formato dd/mm/aaaa  ^(0[1-9]|[12][0-9]|3[01])/(0[1-9]|1[012])/[12][0-9]{3}$  Hora no formato hh:mm  ^([01][0-9]|2[0-3]):[0-5][0-9]$ Exemplos
  • 8.  Email  ^[A-Za-z0-9_.-]+@([A-Za-z0-9_]+.)+[A-Za-z]{2,4}$  Numeros  ^[-+]?[0-9]{1,3}(.[0-9]{3})?(,[0-9]{2})?$ Exemplos
  • 9. <?php $hora = "08:30"; $er = "([01][0-9]|2[0-3]):([0-5][0-9])"; if (ereg($er, $hora, $matriz)) { echo "Na AIT, nossa retrô começou às $matriz[1] horas e "; echo "$matriz[2] minutos.n"; } ?> Exemplo PHP Na AIT, nossa retrô começou às 08 horas e 30 minutos.
  • 10.  RegexPal - http://regexpal.com/  Testador de Expressões Regulares - http://alessandrosantos.com.br/lab/er/  Rubular - http://www.rubular.com/  RegExr - http://gskinner.com/RegExr/  Regex - http://regex.larsolavtorvik.com/ Testadores Online
  • 11.  Portal brasileiro de expressões regulares http://aurelio.net/regex/ Referências