Portuguese, Brazilian subtitles

← 01-13 Import Re

01-13 Import re

Get Embed Code
5 Languages

Showing Revision 2 created 01/25/2013 by Lucilia Figueiredo.

  1. Sistemas de software são em geral muito grandes e não cabem em uma página,
  2. por isso, são divididos em módulos, assim como livros são divididos em capítulos,
  3. ou como o conhecimento sobre o corpo humano é dividido em vários livros.
  4. Em computação, um módulo é um repositório ou uma biblioteca de código --
  5. funções e dados para tarefas úteis.
  6. Em Python, a diretiva import serve para importar um módulo.
  7. Existem várias funções prédefinidas
  8. relacionadas a expressões regulares. Não precisamos reinventar a roda.
  9. Podemos simplesmente importar essas funções em nossos programas e usá-las livremente.
  10. O módulo Python para expressões regulares é chamado "re" -- expressões regulares.
  11. No início de um programa Python, escreva simplesmente "import re"
  12. para ter acesso a todas as funções disponíveis para manipular expressões regulares.
  13. Vou mostrar algumas delas daqui a pouco.
  14. Se vamos escrever expressões regulares em Python, precisamos conhecer a sua forma.
  15. Expressões regulares em Python são como strings.
  16. Elas começam e terminam com aspas simples ou duplas, e têm um conteúdo.
  17. Para distinguir expressões regulares de strings,
  18. expressões regulares começam com a letra minúscula "r", antes das aspas duplas.
  19. Isto aqui é um string com cinco caracteres "[0-9]".
  20. Isto aqui, começando com um "r", é uma expressão regular
  21. que casa com 10 diferentes strings com apenas um dígito.
  22. Escrever expressões regulares é um processo criativo.
  23. Você, como programador, é que tem que fazer isso.
  24. Digo criativo no mesmo sentido em que se diz muitas vezes que matemática é elegante.
  25. Assim como existem muitas diferentes equações que denotam o número 4 --
  26. 2+2, 1+3, 8/2, abs(sqrt(16)) --
  27. de fato, um número infinito de tais equações -- existe frequentemente um número infinito de expressões regulares
  28. que servem a um determinado propósito.
  29. Escolher a mais apropriada -- mais concisa, mais simples, mais elegante --
  30. requer criatividade. É uma habilidade que você vai adquirir neste curso.
  31. Digamos que você escreveu uma expressão regular, por exemplo, esta aqui.
  32. Agora você quer usá-la.
  33. Uma das funções mais comuns sobre expressões regulares á findall.
  34. Ela tem como argumentos uma expressão regular e um string e retorna a lista de todos os substrings
  35. que casam com a expressão regular.
  36. Aqui, estamos procurando por strings de um caractere, entre "0" e "9":
  37. o "1" casa, o "+" não casa, o "2" casa, "=" não casa,
  38. o "=" não casa e o "3" casa.
  39. O valor retornado por re.findall
  40. é a lista ["1", "2", "3"] -- que contém todos os substrings que casam com a expressão regular.
  41. A lista pode ser vazia, se a expressão regular não casa com nenhum sbstring.
  42. "re" aqui significa a função é da biblioteca relativa a expressões regulares
  43. Precisamos incluir "import re" no início do programa.
  44. Neste exemplo, o string é novamente "1+2==3",
  45. mas estou usando agora outra expressão regular.
  46. Esta aqui casa apenas com dois strings de um caractere.
  47. Obtemos "1"e "2"-- esses dois casam. O "3" não casa porque não está entre 1 e 2.
  48. "3" não é especificado, ou não casa, com esta expressão regular.
  49. O último exemplo á mais complicado.
  50. Procuramos pos letras de "a" a "c",
  51. mas se você observar, essas letras são minúsculas.
  52. Portanto, "B" maiúsculo, em "Barabara",
  53. não está entre "a" e "c".
  54. A expressão casa com "a", "b", "a", "a" e nenhum caractere em "Liskov".
  55. Barbara Liskov é uma cientista famosa em computação, pelo seu trabalho em
  56. programação orientada a objetos e programação de sistemas.
  57. Entre outras coisa, ela projetou a linguagem CLU.
  58. que eu estou representando aqui.
  59. Ela recebou o Turing Award -- o maior prêmio em ciência da computação.