-
there are 100 c program in the document.
there are 100 c program in the document. -there are 100 c program in the document.
- 2022-01-25 16:54:01下载
- 积分:1
-
一个用MASM写的正则表达式引擎
此正则表达式引擎属于正统的NFA引擎,基本兼容Perl,简单说一下引擎是怎么实现的:
首先做一个递归下降语法分析,利用栈把正则表达式转换成NFA(以有向图的形式表现),再遍历NFA判断是否能到达完成节点。
实现正则表达式匹配的各种复杂功能的力量来自于回溯,而回溯的基础是栈,回溯能力是通过栈来达成的。
栈中保存了匹配路径中所有的状态,状态回溯就是出栈,状态匹配就是入栈。
除了回溯,一些扩展功能的实现也是通过栈来完成的,比如捕获和零宽断言,都要通过搜索或操纵栈来完成。
转换成NFA再匹配的好处是简化匹配和利于优化和DEBUG:因为不管再复杂的表达式转换成NFA之后只有边和节点组成,边和节点也只有顺序、分支、循环这三种形式组成。
详细原理说明看下面关于实现引擎的文章,第3条是我理解引擎匹配原理的入门参考。
支持GBK和UTF8编码
==参考和学习资料==
关于实现引擎的文章:
1、《Perl语言编程》第五章 书
2、《精通正则表达式》 书
3、构造正则表达式引擎 http://www.cppblog.com/vczh/archive/2008/05/22/50763.html 我的原理学习入门参考
4、NFA引擎匹配原理 http://blog.csdn.net/lxcnn/article/details/4304651
5、英文参考资料 请点击左侧文件开始预览 !预览只提供20%的代码片段,完整代码需下载后查看 加载中 侵权举报
- 2022-05-27 18:36:44下载
- 积分:1
-
清华大学数学实验之线性方程组的数值求解幻灯片与MAT源码
清华大学数学实验之线性方程组的数值求解幻灯片与MAT源码-Tsinghua University, Experimental Math linear equations of the numerical solution of the slide with the MAT-source
- 2022-07-05 05:29:21下载
- 积分:1
-
matlab分形程序
实现cantor,分型树,couch曲线等分形图形的建立,内部还包括测距等功能函数
- 2022-05-28 19:14:59下载
- 积分:1
-
pid温度控制
应用背景
可以应用在恒温箱温度控制;
水位控制;
以及需要进行PID调节控制的场合;
关键技术改程序主要用于在恒温控制,使用PID算法进行控制,控制精度高。有需要的童鞋可以下载,用在其他控制上可以对着修改即可实现。
- 2023-09-02 17:30:03下载
- 积分:1
-
Teclado Matricial
艾斯方案 mostra 科摩 usar um teclado 3 x 4 com pic e 科摩 configurar Kbdinit,e também mostra 奥科科摩 usar estrutura de programação 切换案例段 criação de um 帕菜单 interativo 应用 o usuário 普德 escolher o 提珀德苏
- 2023-01-31 16:45:03下载
- 积分:1
-
一个农夫过河问题的算法
一个农夫过河问题的算法-a farmer crossing the algorithm
- 2023-08-03 00:30:03下载
- 积分:1
-
这是一个用Turboc2.0开发的程序,实现了组合数学的序数法
这是一个用Turboc2.0开发的程序,实现了组合数学的序数法-Turboc2.0 with the program and realize the combination of mathematical sequence of numbers
- 2023-02-17 13:10:03下载
- 积分:1
-
样条函数程序
此程序可以计算 1-D 样条函数。用户可以把一些已知的 1 D 数据、 和内插的值可以由惩基于样条函数计算。
- 2022-05-21 03:37:07下载
- 积分:1
-
用树的思想求解素因数
读过很多方法求解的首要因素,今天撞在树上想解决这个问题,定义 typedef 结构节点 {int 树节点数据结构节点 * pleft; 结构节点 * pright ;}节点,* pNode ;1,和我的想法是首先要判断这一数字是大于 2 的如果是少而 2 返回 2,如果是更多比 2 周期法官是否可以分解为两个数字相乘,如果不输出这个数字返回 3,如果大于 2 且可以分解为两个数字相乘是让这两个因素为此数目的左和右儿童跳周期时间复杂程度日志 (n)
- 2022-01-26 04:42:39下载
- 积分:1