Part3词法分析2.pptVIP

  • 7
  • 0
  • 约6.08千字
  • 约 38页
  • 2017-08-16 发布于河南
  • 举报
数据库原理与Oracle——SQL语言 Part3词法分析 授课:胡静 内容提要 词法分析器的作用 词法分析程序的设计与实现——状态图 词法分析程序的自动生成——有穷自动机 正规表达式与有限自动机 问题的提出 如果只向前看一个字符,不能够确定我们将要读入的是哪种类型的token 如果token的开头是“i”,那么它一定是标识符么? 如果token的开头是“2”,那么它一定是一个整型的常数么? 如果我们通过上面的类似“插入”式的方法来写识别token的程序,这样的程序不容易写正确,而且也不容易维护 因此需要一个更加有原理性的方法:词法分析器的生成器,可以自动产生有效的词法分析器。(例如lex,flex,Jlex) 一般说来,没有限制的向前看是必要的 一些问题 如何明确的描述tokens 2.e0 20.e-01 2.0000 “” “x” “\\” “\”\’” 如何将文本分割成tokens if (x == 0) a = x1; if (x == 0) a = x1; 如何描述tokens 我们可以使用正则表达式来描述程序设计语言中的tokens。正则表达式的定义如下: 正规式的例子 令?={a,b}, 正规式 正规集 a {a} a?b {a,b} ab {ab} (a?b)(a?b) {aa,ab,ba,bb} a ? {? ,a,a, ……任意个

文档评论(0)

1亿VIP精品文档

相关文档