行时构件开发平台。Р3.4 正则表达式Р正则表达式(Regular Expression、regex或regexp,缩写为RE),也译为正规表示法、常规表示法,在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容。许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎[12]。Р3.5 LL1算法РLL(1)是预测分析器,Р第一个L代表扫描模式是自左向右的,第二个L代表分析模式是最左推导。至于括号中的1代表在分析中最多向前看一个输入字符。LL(1)的组成包括总控程序,分析栈和分析表,其中分析表是LL(1)分析器的核心。First集合以及后面讲到的Follow集合都与分析表有关。Р分析栈:存放分析过程中的文法符号(待匹配和已经推导的串)。Р分析表:判断当前用那条文法进行推导Р总控程序:做大的调度工作Р关于LL(1)文法的性质如下:Р⑴任何LL(1)文法是无二义性的。Р⑵若一文法中的非终结符含有左递归,则它必然是非LL(1)文法。Р⑶非LL(1)语言是存在的。Р⑷存在一种算法,它能判定任一文法是否为LL(1)文法。Р⑸存在一种算法,它能判定任意两个LL(1)文法是否产生相同的语言。Р⑹不存在这样的算法,它能判定上下文无关语言能否由LL(1)文法产生。Р3.6 编译器Р编译程序构造的一般原理和基本方法。内容包括语言和文法、词法分析、语法分析、语法制导翻译、中间代码生成、存储管理、代码优化和目标代码生成。Р编译器是将一种语言翻译为另一种语言的计算机程序。编译器将源程序(source language) 编写的程序作为输入,而产生用目标语言(target language )编写的等价程序。Р编译器编译程序的流程: