C#解决表达式规则解析问题

shancao 2009-04-13 10:26:35
各位大虾好:(急求)
现在小弟有个问题是关于:
C#解决表达式问题的,具体的描述如下
用户可以在文本(不妨记做Rules)中输入一条规则,例如:“A5+6>b3”表示的意思是判断第A行(也就是第一行和excel的编辑相似,行数用A、B、...Z、AA、...一直到128行)第5列(1、2、...、128)的值加上6大于第b行第三列的值(字母不区分大小写)。数组数据都存储在文本文件(不妨记做Datas),如果数据符合上述规则,即通过不做任何提示,如果不符合规则,则在控制台提示错误,(只需要显示该不符合的规则即可,例如,不符合上述规则只需要显示,“错误。A5+6>b3”即可)
注意:1、规则是用户自己输入的,同时可以输入多条规则进行判断
2、规则的种类支持,四则运算,比如A5*(B3+C2+1)<(A6+10)/3;A[1..5]+3>B[2...6]表示的某些列需要满足的条件等等
在此谢谢了。
需要的是源代码,可以发送到,邮箱:happyshancao@163.com,QQ邮箱:549174129@qq.com,QQ:549174129
万分感谢!!!!
...全文
94 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
shancao 2009-04-15
  • 打赏
  • 举报
回复
谢谢了。希望您能尽快给写代码
terry 2009-04-14
  • 打赏
  • 举报
回复
要考虑的情况:
1,数据源,将文本数据转化成DataTable。
2,表达式的解析:
1),每一个表达式用";"分隔开.
2),表达式比较运算符有六种: "<",">","=","=<",">=","<>" 或者不等于 "!=" 。
3),比较运算符号两边的计算表达式,可能是:
(1)表格中的一个的位置的值(如:A5)。
(2)数值(如:3)。
(3)表格中的一系列的位置的值(如:A[1..5]),数组。
(4)值之间,存在各种可能的运算符的识别(+, -, *, /)。
3,结果比较。


有空帮写代码。
cstester 2009-04-14
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 cstester 的回复:]
Regex类.. Msdn 哈.
提示就能提示这么多了...
希望给加两分, 嘎嘎```
[/Quote]
有个IsMatch 方法.. bool 类型的.
if(!Regex.IsMatch(str,@"^\d+$"))
return;

str是你输入的字符串..
@"" 是你要转义的东西..(判断格式的样式..)
这里给出来的判断是否整数.



期于的你就去找对应的符号 代替把.
cstester 2009-04-14
  • 打赏
  • 举报
回复
Regex类.. Msdn 哈.
提示就能提示这么多了...
希望给加两分, 嘎嘎```
shancao 2009-04-14
  • 打赏
  • 举报
回复
如何使用excel宏来做呀?我要的是C#代码
mb_1985 2009-04-13
  • 打赏
  • 举报
回复
应该使用Excel宏来做

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧