Baixe o app para aproveitar ainda mais
Prévia do material em texto
CCT0621 - Compiladores Aula 05: Análise léxica e sintática-Expressão Regular Introdução à Programação AULA 01: Introdução à Lógica de ProgramaçãoCompiladores Expressões regulares Agenda • Objetivo da aula • Introdução e contextualização • Exemplos de Expressões regulares • Onde se aplica 3Compiladores Objetivos da aula • Compreender o que é Expressão Regular. • Conhecer uma estrutura de Expressão Regular. • Destacar exemplos de Expressões Regulares. 4Compiladores Conceitos de Expressão Regular • Expressão Regular é uma linguagem de busca de padrões. • Também podemos dizer que é uma linguagem onde dizemos o padrão (pattern) do texto que queremos encontrar, passamos o texto alvo (target) e pedimos para uma Regex engine (motor) fazer essa busca. 5Compiladores Introdução Expressões regulares são escritas numa linguagem formal que pode ser interpretada por um processador de expressão regular. - Um programa serve como um gerador de analisador sintático ou examinador do texto para identificar partes que casam com a especificação dada. 6Compiladores Uma expressão regular é um método forma de se especificar um padrão de texto. Introdução Também pode ser: - um modo declarativo de expressar strings - As expressões regulares servem como linguagem de entrada para muitos sistemas que processam strings. • Exemplo: Conteúdo WEB 7Compiladores Introdução- Outros entendimentos Uma maneira de procurar um texto que você não lembre exatamente como é, mas tem ideia das variações possíveis. Uma maneira de procurar um trecho em posições específicas como no começo ou no fim de uma linha, ou palavra. 8Compiladores Introdução- Outos entendimentos uma maneira de um programador especificar padrões complexos que podem ser procurados e casados em uma cadeia de caracteres. 9Compiladores Exemplos de RegExp Detalhando, é uma composição de símbolos de caracteres com funções especiais, que, quanto agrupados entre si e com caracteres literais, formam uma sequencia, uma expressão. 10Compiladores \d\d\d\d\d-?\d\d\d Exemplos de RegExp Suponhamos que temos um arquivo CSV com os dados de milhares de clientes e desejamos coletar informações somente do CEP, desses clientes. Caso não utilizemos as Expressões Regulares teríamos que construir uma função para tratamento de String para encontrar essa informação. 11Compiladores Exemplos de RegExp Porem, se usarmos as Expressões Regulares, teríamos simplesmente a expressão a seguir: 12Compiladores \d\d\d\d\d-?\d\d\d Exemplos de RegExp 13Compiladores \d\d\d\d\d-?\d\d\d O \d pertence a uma classe de carácter, com valores números de zero a nove (0–9). A composição do CEP possui 5 números, um hífen (-) e mais 3 números. Tipo: 1.\d\d\d\d\d (5 primeiros números) 2.- (hífen da máscara do CEP) 3.? (Ponto de interrogação para tratar a ausência da mascara) 4.\d\d\d (3 últimos números) Exemplos de RegExp Como seria as expressões regulares para representar os seguintes itens com mascara ou sem: • CPF; • CNPJ • RG; • CEP • FONE 14Compiladores Metacaracteres de RegExp 15Compiladores Quantificadores de RegExp 16Compiladores Onde se aplica as RegExp ? 17Compiladores Google Docs: Você sabia que desde março de 2009 é possível usar expressões regulares em seus documentos do Google Doc? • Mas quais metacaracteres utiliza? • Como ele associa múltiplas linhas/parágrafos? • E a acentuação, como fica? • Quanto ao erro de sequencia vazia? Pesquisa sobre esses questionamentos e envie para hilson.silva@estacio.br. mailto:hilson.silva@estacio.br Introdução à Programação AULA 01: Introdução à Lógica de Programação Bibliografia Básica Compiladores 1. HO, Alfred V.; SETHI, Ravi; ULLMAN, Jeffrey D. Compiladores: princípios,técnicas e ferramentas. Rio de Janeiro: LTC, 2008. 2. PRICE, Ana Maria; TOSCANI, Simão Sirineo. Implementação de Linguagens de Programação: Compiladores. 2. ed. Porto Alegre: Sagra-Luzzato - Instituto de Informática da UFRGS, 2001. 3. RICARTE, Ivan. Introdução a Compilação. 1. ed. São Paulo: Elsevier, 2008 Introdução à Programação AULA 01: Introdução à Lógica de Programação Sugestões de Livros Compiladores
Compartilhar