Portuguese, Brazilian subtitles

← 02-25 Rule Order

02-25 Ordem das Regras

Get Embed Code
3 Languages

Showing Revision 2 created 03/04/2013 by Lucilia Figueiredo.

  1. Como vimos no último teste,
  2. não é sempre claro o que vai acontecer quando nossas definições de token se sobrepõem.
  3. A sequência de 7 caracteres "hello"
  4. casa com nossa expressão regular para WORD
  5. e também com nossa expressão regular para STRING.
  6. Isso é um problema não apenas com linguagens de programação,
  7. mas também com linguagens naturais.
  8. Como o hipotético dono dests restaurante, você perceberia
  9. que "We don't just serve hamburgers, we serve people"
  10. poderia ser interpretado de maneira incorreta.
  11. Acho que esses hamburgers são de soja :-)
  12. Queremos ter regras definitivas, que nos permitam escolher
  13. qual delas nós preferimos
  14. De fato, vamos usar uma regra muito simples.
  15. A primeira da lista ganha,
  16. aquela que estiver mais no topo do arquivo.
  17. Então, este é o nosso vencedor, e terá prioridade sobre STRING.
  18. Se você está fazendo um analisador léxico para HTML ou JavaScript,
  19. a ordem das definições é muito importante.
  20. Vamos investigar isso na forma de um teste.
  21. Suponha que temos como entrada o string -- hello, "world" --
  22. e queremos que isso resulte em WORD --
  23. a palavra hello -- seguido de STRING.
  24. Vou dar para você 3 regras,
  25. e quero que voc6e me diga qual delas tem que vir por último,
  26. para que tenhamos o efeito desejado.
  27. E aqui, porque você viu tudo isso antes, estou omitindo alguns detalhes,
  28. como COLON, TOKEN etc.
  29. O que eu quero é que você me diga
  30. qual dessas funções, qual dessas regras,
  31. teria que vir por último, tendo em mente que a que vem primeiro
  32. tem prioridade, quando separamos hello, "world" em
  33. um token WORD seguido de STRING.