基于NodeJS函数接口描述的正则引擎的设计和实现
摘要 | 第5-6页 |
Abstract | 第6页 |
缩略词 | 第7-10页 |
第一章 绪论 | 第10-14页 |
1.1 研究背景 | 第10-11页 |
1.2 国内外研究现状 | 第11-12页 |
1.3 论文研究内容及意义 | 第12-13页 |
1.4 论文组织结构 | 第13-14页 |
第二章 相关技术介绍 | 第14-24页 |
2.1 NodeJS平台 | 第14-16页 |
2.1.1 NodeJS平台简介 | 第14-15页 |
2.1.2 NodeJS平台的特点 | 第15-16页 |
2.2 正则表达式 | 第16-18页 |
2.3 正则引擎相关技术 | 第18-23页 |
2.3.1 有限状态自动机 | 第18页 |
2.3.2 正则引擎NFA技术 | 第18-20页 |
2.3.3 正则引擎DFA技术 | 第20-22页 |
2.3.4 NFA与DFA对比 | 第22-23页 |
2.4 本章小结 | 第23-24页 |
第三章 系统需求分析与概要设计 | 第24-28页 |
3.1 系统需求分析 | 第24-25页 |
3.2 系统概要设计 | 第25-26页 |
3.3 本章小结 | 第26-28页 |
第四章 NodeJS部分设计和实现 | 第28-42页 |
4.1 正则表达式函数接口的设计和实现 | 第28-30页 |
4.1.1 设计和实现生成对象 | 第28-29页 |
4.1.2 设计和实现函数接口 | 第29-30页 |
4.1.3 非法输入处理 | 第30页 |
4.2 NodeJS扩展的基本概念 | 第30-32页 |
4.2.1 扩展编写流程 | 第30-31页 |
4.2.2 扩展加载流程 | 第31页 |
4.2.3 基本对象 | 第31页 |
4.2.4 基本封装 | 第31-32页 |
4.2.5 接口转换层 | 第32页 |
4.3 NodeJS扩展的设计和实现 | 第32-41页 |
4.3.1 模块对象的封装 | 第32-34页 |
4.3.2 模块对象的构造 | 第34-36页 |
4.3.3 主要接口的实现 | 第36-40页 |
4.3.4 扩展构建与打包 | 第40-41页 |
4.4 本章小结 | 第41-42页 |
第五章 正则引擎部分设计和实现 | 第42-56页 |
5.1 设计背景 | 第42-43页 |
5.2 NFA Parser模块设计和实现 | 第43-48页 |
5.2.1 非法字符检测 | 第45页 |
5.2.2 串联操作的处理 | 第45-46页 |
5.2.3 可选操作的处理 | 第46-47页 |
5.2.4 重复操作的处理 | 第47-48页 |
5.3 NFA转换DFA模块设计和实现 | 第48-53页 |
5.3.1 转换算法的运行方式 | 第48-50页 |
5.3.2 转换实现细节 | 第50-52页 |
5.3.3 DFA优化 | 第52-53页 |
5.4 匹配接口模块设计和实现 | 第53-55页 |
5.5 本章小结 | 第55-56页 |
第六章 系统测试 | 第56-62页 |
6.1 系统功能测试 | 第56-57页 |
6.2 系统性能测试 | 第57-60页 |
6.3 本章小结 | 第60-62页 |
第七章 总结与展望 | 第62-64页 |
7.1 总结 | 第62页 |
7.2 展望 | 第62-64页 |
致谢 | 第64-66页 |
参考文献 | 第66-68页 |
作者简介 | 第68页 |