2007年11月28日星期三

lex/yacc系列:简介

lex和yacc用来帮助编写程序,对结构化的输入进行转换


lex的任务是将结构化的输入分割成有意义的单元(通常称为标记,token),这一过程也称为词法分析(lexical analysis,或者简称为lexing)。lex使用正则表达式(regular expression)作为标记描述。


当将输入拆分为标记时,程序通常需要建立标记之间的关系,这个过程称为分析(parsing),即定义程序能够理解的关系的规则列表,也就是语法(grammar)。yacc采用简明的语法描述,产生一个能分析语法的C例程,即分析程序(parser)。

没有评论: