Download pptx - Expressões regulares

Transcript
Page 1: Expressões regulares

Expressões Regularesno cotidiano

Rafael Santiago

Page 2: Expressões regulares

Tópicos

• Objetivo• Utilização• História• Conceito• Ferramentas• Exemplos

Page 3: Expressões regulares

Objetivo

Page 4: Expressões regulares

Objetivo

Dizer algo abrangente de uma forma simplificada.

Page 5: Expressões regulares

Tópicos

• Objetivo• Utilização• História• Conceito• Ferramentas• Exemplos

Page 6: Expressões regulares

Utilização

Page 7: Expressões regulares

Utilização

• Substituição• Validação• Realce de Sintaxe• Filtragem de informação

Foco em padrões!

Page 8: Expressões regulares

Tópicos

• Objetivo• Utilização• História• Conceito• Ferramentas• Exemplos

Page 9: Expressões regulares

História

Page 10: Expressões regulares

História

• (1943)– Funcionamento dos neurônios

• (1950)– Stephen Cole Kleene

• Escreveu modelos desses estudos• Álgebra dos Conjuntos Regulares

Page 11: Expressões regulares

História

• (1965 - 1966)– Implementado QED (Quick EDitor)– Padrões em arquivos de texto– SDS 940

Page 12: Expressões regulares

História

• (1971)– Ken Thompson

• Unix ed

• (1973)– Aplicativo grep

• global / regular expression / print

Page 13: Expressões regulares

História

• (1986)– Pacote regex

• Pioneiro• Escrito na linguagem C• De graça!

Page 14: Expressões regulares

Tópicos

• Objetivo• Utilização• História• Conceito• Ferramentas• Exemplos

Page 15: Expressões regulares

Conceito

Page 16: Expressões regulares

Conceito

Em ciência da computação, uma expressão regular (ou o estrangeirismo regex, abreviação do inglês regular expression) provê uma forma concisa e flexível de identificar cadeias de caracteres de interesse, como caracteres particulares, palavras ou padrões de caracteres. Expressões regulares são escritas numa linguagem formal que pode ser interpretada por um processador de expressão regular, um programa que ou serve um gerador de analisador sintático ou examina o texto e identifica partes que casam com a especificação dada.

Wikipedia – 24/04/2012

Page 17: Expressões regulares

Tópicos

• Objetivo• Utilização• História• Conceito• Ferramentas• Exemplos

Page 18: Expressões regulares

Ferramentas

Page 19: Expressões regulares

• Metacaracteres• Padrão (Pattern)• Combinação (Match)• Interpretador de ER

Semântica

• CPF• Data• Hora

Ferramentas

Page 20: Expressões regulares

• Metacaracteres• Padrão (Pattern)• Combinação (Match)• Interpretador de ER

Casamento

PadrãoPalavra

Ferramentas

Page 21: Expressões regulares

Metacaracteres

Page 22: Expressões regulares

• O que são metacaracteres?

São caracteres que possuem um significado especial

(ao invés do significado literal) em um programa de

computador.

Metacaracteres

Page 23: Expressões regulares

• Representantes• Quantificadores• Âncoras• Miscelâneas

Metacaracteres

Page 24: Expressões regulares

• Representantes• Quantificadores• Âncoras• Miscelâneas

Metacaracteres

• . (Ponto)• [...] Lista

Page 25: Expressões regulares

• Representantes• Quantificadores• Âncoras• Miscelâneas

Metacaracteres

• ? • *• +•{}

Page 26: Expressões regulares

• Representantes• Quantificadores• Âncoras• Miscelâneas

Metacaracteres

• ^ (Início de linha)• $

Page 27: Expressões regulares

• Representantes• Quantificadores• Âncoras• Miscelâneas

Metacaracteres

• \ (escape)• | (ou)• (...) (grupo)

Page 28: Expressões regulares

MetacaracteresMeta Mnemônico

. ponto[] lista[^] lista negada? opcional* asterisco+ mais{ } chaves^ circunflexo$ cifrão\b borda\ escape| ou

( ) grupo\1 retrovisor

Page 29: Expressões regulares

Atenção!Não confunda!

• Na linha de comando– ? e o * são curingas– Especificam nomes de arquivos

Page 30: Expressões regulares

InterpretadorREGEX

Page 31: Expressões regulares

API Java

• java.util.regex– Matcher– Pattern

• java.lang– String

Page 32: Expressões regulares

API Java

• java.util.regex– Matcher– Pattern

• java.lang– String

Cria o Padrão

Page 33: Expressões regulares

API Java

• java.util.regex– Matcher– Pattern

• java.lang– String

Busca o Padrão

Page 34: Expressões regulares

API Java

• java.util.regex– Matcher– Pattern

• java.lang– String

• matches• replaceFirst• replaceAll

Page 35: Expressões regulares

Tópicos

• Objetivo• Utilização• História• Conceito• Ferramentas• Exemplos

Page 36: Expressões regulares

Exemplos

Page 37: Expressões regulares

Validação de dados que seguem um certo formato

• Verificar se o formato é válido• Aplicar máscara• Critérios de Aceitação

Page 38: Expressões regulares

Validação com StringTokenizer

Page 39: Expressões regulares

Validação com Substring da classe String

Page 40: Expressões regulares

Validação com ReplaceAll da classe String (Regex)

Page 41: Expressões regulares

Aplicando máscaras com Pattern (Regex)

Page 42: Expressões regulares

Critério de Aceitação

Page 43: Expressões regulares

Tópicos

• Objetivo• Utilização• História• Conceito• Ferramentas• Exemplos

Page 44: Expressões regulares

Por que usar ER?

Page 45: Expressões regulares

Por que usar ER?

• Redução de código• Facilidade de manutenção• Otimizar buscas feitas em funções de

busca/substituição em editores de texto

Page 46: Expressões regulares

Dúvidas?

Page 47: Expressões regulares

Obrigado!Rafael Santiago

[email protected]://br.linkedin.com/in/rmxsantiago


Recommended