Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introdução a Expressões Regulares

Introdução a Expressões Regulares

Uma palestra bem introdutória sobre expressões regulares (regex), apresentando os conceitos básico suficiente para criação de expressões para validação de email, cep e busca de palavras em um texto.

A apresentação foi dada no Black River Studios, em Manaus, no dia 03/11/2015.

Bruno Croci

November 03, 2015
Tweet

More Decks by Bruno Croci

Other Decks in Programming

Transcript

  1. • regex • regexp • regular expressions • rational expression

    • expressão regular • espressione regolare • . . .
  2. “… provê uma forma concisa e flexível de identificar cadeias

    de caracteres de interesse, como caracteres particulares, palavras ou padrões de caracteres” -- Wikipédia
  3. Como usar • Qualquer editor de texto bom ◦ Office

    ◦ Sublime Text • Linguagens de Programação: provavelmente todas Ferramentas?
  4. Vamos procurar a palavra Vestibulum Lorem ipsum dolor sit amet,

    consectetur adipiscing elit. Quisque porttitor urna a cursus egestas. Vestibulum in faucibus nibh. Sed ut malesuada nisi. Etiam maximus semper convallis. Donec mi nunc, gravida eget viverra sed, convallis vulputate libero. Ut consectetur sapien in turpis tristique, non ullamcorper nunc ultricies. Nam accumsan justo non justo congue, eu gravida libero pulvinar. Nunc eget eros vel quam laoreet sagittis at sit amet felis. Quisque lacus felis, sagittis a venenatis vitae, interdum id nunc. Morbi sagittis suscipit erat a vestibulum. Vestibulum mi odio, maximus nec pharetra ac, tempus eget enim. Phasellus eu aliquam diam. Mauris ultrices vel dui vel efficitur. Duis id egestas nisl. Nulla mauris lacus, sodales non cursus ut, congue vitae risus. Nulla magna risus, tempor eu tincidunt eu, placerat id dui. Vivamus fringilla massa vel feugiat facilisis. Ut non suscipit leo. Phasellus facilisis nisi enim, ac ultricies erat varius vel. Ut libero tortor, fringilla nec venenatis sit amet, sodales vel purus. Vivamus ac orci commodo, bibendum urna vel, placerat nibh. Integer maximus lorem tellus, vel suscipit orci dapibus nec. Nulla elementum tincidunt molestie. Nam mattis laoreet pellentesque. Vestibulum condimentum, eros ut elementum interdum, ex arcu sollicitudin augue, in pretium lectus tellus sed lectus. Proin enim risus, placerat id fermentum consequat, posuere eget nibh. Phasellus at tellus ex. Praesent porttitor, dui a egestas semper, nunc enim eleifend nunc, at consectetur ex nisi nec sem. Pellentesque metus diam, fringilla ac gravida ac, vehicula vitae sem. Aliquam consectetur arcu felis, a pulvinar ipsum tempus ut.
  5. /Vestibulum/ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque

    porttitor urna a cursus egestas. Vestibulum in faucibus nibh. Sed ut malesuada nisi. Etiam maximus semper convallis. Donec mi nunc, gravida eget viverra sed, convallis vulputate libero. Ut consectetur sapien in turpis tristique, non ullamcorper nunc ultricies. Nam accumsan justo non justo congue, eu gravida libero pulvinar. Nunc eget eros vel quam laoreet sagittis at sit amet felis. Quisque lacus felis, sagittis a venenatis vitae, interdum id nunc. Morbi sagittis suscipit erat a vestibulum. Vestibulum mi odio, maximus nec pharetra ac, tempus eget enim. Phasellus eu aliquam diam. Mauris ultrices vel dui vel efficitur. Duis id egestas nisl. Nulla mauris lacus, sodales non cursus ut, congue vitae risus. Nulla magna risus, tempor eu tincidunt eu, placerat id dui. Vivamus fringilla massa vel feugiat facilisis. Ut non suscipit leo. Phasellus facilisis nisi enim, ac ultricies erat varius vel. Ut libero tortor, fringilla nec venenatis sit amet, sodales vel purus. Vivamus ac orci commodo, bibendum urna vel, placerat nibh. Integer maximus lorem tellus, vel suscipit orci dapibus nec. Nulla elementum tincidunt molestie. Nam mattis laoreet pellentesque. Vestibulum condimentum, eros ut elementum interdum, ex arcu sollicitudin augue, in pretium lectus tellus sed lectus. Proin enim risus, placerat id fermentum consequat, posuere eget nibh. Phasellus at tellus ex. Praesent porttitor, dui a egestas semper, nunc enim eleifend nunc, at consectetur ex nisi nec sem. Pellentesque metus diam, fringilla ac gravida ac, vehicula vitae sem. Aliquam consectetur arcu felis, a pulvinar ipsum tempus ut.
  6. /Vestibulum|vestibulum/ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque

    porttitor urna a cursus egestas. Vestibulum in faucibus nibh. Sed ut malesuada nisi. Etiam maximus semper convallis. Donec mi nunc, gravida eget viverra sed, convallis vulputate libero. Ut consectetur sapien in turpis tristique, non ullamcorper nunc ultricies. Nam accumsan justo non justo congue, eu gravida libero pulvinar. Nunc eget eros vel quam laoreet sagittis at sit amet felis. Quisque lacus felis, sagittis a venenatis vitae, interdum id nunc. Morbi sagittis suscipit erat a vestibulum. Vestibulum mi odio, maximus nec pharetra ac, tempus eget enim. Phasellus eu aliquam diam. Mauris ultrices vel dui vel efficitur. Duis id egestas nisl. Nulla mauris lacus, sodales non cursus ut, congue vitae risus. Nulla magna risus, tempor eu tincidunt eu, placerat id dui. Vivamus fringilla massa vel feugiat facilisis. Ut non suscipit leo. Phasellus facilisis nisi enim, ac ultricies erat varius vel. Ut libero tortor, fringilla nec venenatis sit amet, sodales vel purus. Vivamus ac orci commodo, bibendum urna vel, placerat nibh. Integer maximus lorem tellus, vel suscipit orci dapibus nec. Nulla elementum tincidunt molestie. Nam mattis laoreet pellentesque. Vestibulum condimentum, eros ut elementum interdum, ex arcu sollicitudin augue, in pretium lectus tellus sed lectus. Proin enim risus, placerat id fermentum consequat, posuere eget nibh. Phasellus at tellus ex. Praesent porttitor, dui a egestas semper, nunc enim eleifend nunc, at consectetur ex nisi nec sem. Pellentesque metus diam, fringilla ac gravida ac, vehicula vitae sem. Aliquam consectetur arcu felis, a pulvinar ipsum tempus ut.
  7. /[Vv]estibulum/ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque

    porttitor urna a cursus egestas. Vestibulum in faucibus nibh. Sed ut malesuada nisi. Etiam maximus semper convallis. Donec mi nunc, gravida eget viverra sed, convallis vulputate libero. Ut consectetur sapien in turpis tristique, non ullamcorper nunc ultricies. Nam accumsan justo non justo congue, eu gravida libero pulvinar. Nunc eget eros vel quam laoreet sagittis at sit amet felis. Quisque lacus felis, sagittis a venenatis vitae, interdum id nunc. Morbi sagittis suscipit erat a vestibulum. Vestibulum mi odio, maximus nec pharetra ac, tempus eget enim. Phasellus eu aliquam diam. Mauris ultrices vel dui vel efficitur. Duis id egestas nisl. Nulla mauris lacus, sodales non cursus ut, congue vitae risus. Nulla magna risus, tempor eu tincidunt eu, placerat id dui. Vivamus fringilla massa vel feugiat facilisis. Ut non suscipit leo. Phasellus facilisis nisi enim, ac ultricies erat varius vel. Ut libero tortor, fringilla nec venenatis sit amet, sodales vel purus. Vivamus ac orci commodo, bibendum urna vel, placerat nibh. Integer maximus lorem tellus, vel suscipit orci dapibus nec. Nulla elementum tincidunt molestie. Nam mattis laoreet pellentesque. Vestibulum condimentum, eros ut elementum interdum, ex arcu sollicitudin augue, in pretium lectus tellus sed lectus. Proin enim risus, placerat id fermentum consequat, posuere eget nibh. Phasellus at tellus ex. Praesent porttitor, dui a egestas semper, nunc enim eleifend nunc, at consectetur ex nisi nec sem. Pellentesque metus diam, fringilla ac gravida ac, vehicula vitae sem. Aliquam consectetur arcu felis, a pulvinar ipsum tempus ut.
  8. Quantidade • *: qualquer quantidade, entre 0 e indefinido. Equivalente

    a {0,} • ?: exatamente 0 ou exatamente 1. Equivalente a {0,1} • +: 1 ou mais, até indefinido. Equivalente a {1,} Outros delimitadores de quantidade
  9. /[^ .,…—]*/ poema nos meus 43 anos terminar sozinho no

    túmulo de um quarto sem cigarros nem bebida— careca como uma lâmpada, barrigudo, grisalho, e feliz por ter um quarto. …de manhã eles estão lá fora ganhando dinheiro: juízes, carpinteiros, encanadores , médicos, jornaleiros, guardas, barbeiros, lavadores de carro, dentistas, floristas, garçonetes, cozinheiros, motoristas de táxi… e você se vira para o lado pra pegar o sol nas costas e não direto nos olhos. -- Charles Bukowski
  10. ( ) Grupos de Captura Aplica a expressão de regular

    e define que apenas parte do texto pode ter alguma importância.