为什么80%的码农都做不了架构师?>>>
词法分析器flex教程
flex是基于正则表达式,用于对字符串进行提取和分析的工具。一般情况下,flex常用语编译器前端的词法分析阶段。flex程序读取用户输入的词法单元描述文件,生成lex.yy.c文件,接着使用c语言编译器编译该文件即可。学会使用flex,可以简化我们在文本分析中的工作,利用已有的工具即可。
flex输入文件的格式
flex输入文件中包含三个部分,即定义、规则和用户代码。格式如下:
代码语言:javascript复制definitions
%%
rules
%%
user code
Jetbrains全家桶1年46,售后保障稳定
在定义和规则部分,任何处于符号“%{”和“%}”之间的字符都会原样复制到输出中。
flex模式的规则
flex中的模式是扩展正则表达式,其中稍微不通的地方在与flex中双引号间的字符都会原样匹配,即使其中包含运算符。而在正则表达式中,则是通过转义符号来实现对运算符的匹配(flex中也支持此方法)。
一个简单的事例
flex代码如下:
测试代码:
输出结果,读者可以自行尝试。
Flex参考文档 测试代码
转载于:https://my.oschina.net/taodf/blog/3003200
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/219072.html原文链接:https://javaforall.cn