如何实现对自定义表达式的语法检查的功能

zmidl 2018-12-19 05:24:31
如题 需要实现一个功能 就是对 用户输入的一长串字符串做语法检查。目的是让用户通过直接写条件语句来达到快速配置条件参数。
比如比较简单的表达式 :({obj1.Input}+{obj2.Output})* ({obj3.Result}-6.5) 是用户自己写的一段表达式
需要检查
1-括号必须成对出现
2-符号"."左右都是数字的算小数,然则算对象+属性名的搭配
3.对象要用大括号"{ }"括起来
4-括号按照四则混合运算优先级执行 等等
不知道 VS的语法检查 有没有用到.net某个库? ScintillaNET.dll 是不是可以用呢?有做过类似需求的C友给点方向吧?
...全文
213 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
程序员的键盘 2019-05-11
  • 打赏
  • 举报
回复
DataTable dt = new DataTable();
object obj = dt.Compute("({obj1.Input}+{obj2.Output})* ({obj3.Result}-6.5)");
无名de旅人 2019-05-10
  • 打赏
  • 举报
回复
光是四则混合运算,后缀表达式完美解决。

111,096

社区成员

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

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

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