Flex语法扫描器生成器

联合创作 · 2023-10-02 06:00

flex (fast lexical analyser generator) 是 Lex 的另一个替代品。它经常和自由软件 Bison 语法分析器生成器 一起使用。Flex 最初由 Vern Paxson 于 1987 年用C语言写成。

Flex 手册里对 Flex 描述如下:

“flex 是一个生成扫描器的工具,能够识别文本中的词法模式。flex读入给定的输入文件,如果没有给定文件名的话,则从标准输入读取,从而获得一个关于需要生成 的扫描器的描述。此描述叫做 规则,由正则表达式和 C 代码对组成。flex 的输出是一个 C 代码文件——lex.yy.c——其中定义了 yylex() 函数。编译输出文件并且和 -lfl 库链接生成一个可执行文件。当运行可执行文件的时候,它分析输入文件,为每一个正则表达式寻找匹配。当发现一个匹配时,它执行与此正则表达式相关的 C 代码。”

一个相似的,用 C++ 语言的词法分析器生成器是 flex++,包含在 flex 软件包里。

Flex 不是 GNU 工程,但是 GNU 为 Flex 写了手册。

浏览 8
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报