Vczh Library++3.0之可配置语法分析器(分析Demo:函数式宏)
摘要: 上一篇文章提到了我开发了可配置语法分析器之后做了一个FpMacro用来生成C++有规律的代码。这一篇文章就从FpMacro入手,分析可配置语法分析器所需要具备的功能。首先让我们来了解一下什么是FpMacro。
阅读全文
posted @
2009-11-27 21:21 陈梓瀚(vczh) 阅读(3311) |
评论 (3) 编辑
Vczh Library++3.0之可配置语法分析器(前言)
摘要: 花了差不多两个星期的时间将一个可配置语法分析器写好了。这个语法分析器被设计来完成以下任务:
1、易于使用,并且在运行时可更改
2、提供对分析字符串和容器的支持
3、可使用正则表达式辅助定义分析器
4、如果觉得预定义的设备不满意,用户可以自行提供新的文法元素(譬如说增加一种使用通配符进行语法分析的元素)
5、提供可配置错误恢复策略,提供合理的错误发生位置信息,用户可根据自己的意愿来决定错误信息的内容。
阅读全文
posted @
2009-11-27 10:01 陈梓瀚(vczh) 阅读(3167) |
评论 (2) 编辑
Vczh Library++3.0之正则表达式引擎(DFA与捕获、预查结合的匹配)
摘要: DFA与捕获和预查结合起来的话很麻烦,不能用一张表来迭代,而是要用回溯,然后在回溯的时候记下状态。至此正则表达式的所有算法都完成了,接下来是详细介绍。
阅读全文
posted @
2009-11-14 19:13 陈梓瀚(vczh) 阅读(2503) |
评论 (1) 编辑
Vczh Library++3.0之正则表达式引擎(从NFA到DFA)
摘要: 今天花了一个晚上完成并测试了从NFA到DFA的代码。NFA到DFA的主要过程就是构造出一个等价于NFA的状态机,使得从任何一个状态出去的状态转换都不具有相同的条件。这个约束就是“确定性”的含义,给定一个状态和一个输入,最多只能跳转到一个目标状态。于是知道了这个过程,代码就很好写了:
阅读全文
posted @
2009-11-03 08:34 陈梓瀚(vczh) 阅读(2765) |
评论 (8) 编辑