分析四则运算表达式结构的小程序
2007-12-24 19:13
246 查看
分析四则运算表达式结构的小程序
前段时间下载了一个正则表达式的测试工具Expresso,使用它的时候发现它可以动态解析正则表达式结构,非常直观方便。本来以为.net里面提供了解析正则表达式的类,搜了搜msdn,发现是作者自己写的一个解析的类。
本来想反编译RegDecoder.dll看看它的实现过程的,后来一想,正则表达式的语法并不复杂,想当年我也用lex和yacc写过分析这样的一些表达式的程序,写这样的解析程序应该不是什么难题。这种纯算法的东西看起来很是头痛的,与其看它的还不如自己写一个。可自从大学毕业后就没有用过编译原理的知识了,好像差不多都还给老师了,实在惭愧呀。确实应该复习一下。
去网上下了一本《编译原理及实践》看了看,写了个分析四则运算的小程序练练手。这个程序只是为了复习编译原理的概念,词法分析和语法分析的算法都是自己写的,虽然有一定的通用性,但并没有考虑效率,想到什么样的就写的什么样的,语法分析也不想搞的太复杂,采用的是类似LALR(1)的一种算法,分析四则运算倒也没有什么问题。
该程序以比较直观的方式分析了四则运算表达式的结构,有兴趣的朋友可以下载玩一下(需要.net 3.5运行环境)。由于程序是即兴之作,那天马行空般的代码就不贴出来丢人了^_^。什么时候有空写个分析sql语句的程序玩玩。如果对编译原理有兴趣的朋友欢迎一起学习。 程序下载
前段时间下载了一个正则表达式的测试工具Expresso,使用它的时候发现它可以动态解析正则表达式结构,非常直观方便。本来以为.net里面提供了解析正则表达式的类,搜了搜msdn,发现是作者自己写的一个解析的类。
本来想反编译RegDecoder.dll看看它的实现过程的,后来一想,正则表达式的语法并不复杂,想当年我也用lex和yacc写过分析这样的一些表达式的程序,写这样的解析程序应该不是什么难题。这种纯算法的东西看起来很是头痛的,与其看它的还不如自己写一个。可自从大学毕业后就没有用过编译原理的知识了,好像差不多都还给老师了,实在惭愧呀。确实应该复习一下。
去网上下了一本《编译原理及实践》看了看,写了个分析四则运算的小程序练练手。这个程序只是为了复习编译原理的概念,词法分析和语法分析的算法都是自己写的,虽然有一定的通用性,但并没有考虑效率,想到什么样的就写的什么样的,语法分析也不想搞的太复杂,采用的是类似LALR(1)的一种算法,分析四则运算倒也没有什么问题。
该程序以比较直观的方式分析了四则运算表达式的结构,有兴趣的朋友可以下载玩一下(需要.net 3.5运行环境)。由于程序是即兴之作,那天马行空般的代码就不贴出来丢人了^_^。什么时候有空写个分析sql语句的程序玩玩。如果对编译原理有兴趣的朋友欢迎一起学习。 程序下载
相关文章推荐
- 四则混合运算表达式分析程序的原理及其实现
- C# 四则运算表达式解析器分析
- 个人项目终极博客——四则运算题目生成程序分析
- java基础复习1--基本数据类型、运算符号、表达式语句与程序结构
- 四则运算表达式的语法分析
- 结对项目博客——四则运算题目生成程序的改进与分析
- 四则运算题目生成程序分析
- 结对项目博客——四则运算题目生成程序的改进与分析(附加题)
- 四则运算表达式求值程序(C语言版)
- 1024. 分析四则运算表达式
- C++计算四则运算表达式程序
- 【个人项目总结】C#四则运算表达式生成程序
- C语言概述、数据类型、运算表达式、程序结构
- 结对项目博客-四则运算题目生成程序的改进与分析
- 关于四则运算表达式分析思路
- 程序输出小学四则运算表达式,支持真分数四则运算
- 利用正则表达式判断四则运算表达式是否合法
- 7.栈的应用-四则运算算术表达式求解(算符优先法)
- 数学四则运算的程序
- 栈的应用二--四则运算表达式求值(逆波兰表示:后缀表达式)