C#中有没有计算字符串中算数表达式结果的方法

在一个winFrom里面,也许是一个奇怪的想法,我想获取的是比如TextBox里面的一行字符串,比如这行字符串写的是"1+2*(3+4)/5",当我按下回车或者某个按钮后... 在一个winFrom里面,也许是一个奇怪的想法,我想获取的是比如TextBox里面的一行字符串,比如这行字符串写的是"1+2*(3+4)/5",当我按下回车或者某个按钮后,程序自动的给我算出这个算数式的结果,还有我如何判断我输入的是个算数表达式而不是其他字符呢?如果需要使用正则表达式,那我应该如何写呢?顺便咨询一下,呵呵 希望各位高手可以指点一二,谢谢:) 展开
 我来答
百度网友4820190
2013-06-06 · 超过17用户采纳过TA的回答
知道答主
回答量:98
采纳率:0%
帮助的人:38.2万
展开全部
 public static Microsoft.JScript.Vsa.VsaEngine Engine = Microsoft.JScript.Vsa.VsaEngine.CreateEngine();

        public double EvalJScript(string JScript)
        {
            double Result = 0; 
            try
            {
                Result = System.Convert.ToDouble(Microsoft.JScript.Eval.JScriptEvaluate(JScript, Engine));
            }
            catch (Exception ex)
            {
                return -1;
            }
            return Result;
        }

JScript 是表达式,Result是结果

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
koko200147
2012-03-14 · TA获得超过282个赞
知道小有建树答主
回答量:600
采纳率:0%
帮助的人:287万
展开全部
你可以解析这个算式了,数学符号不是很多,解析出来,形成算式就有结果,至于正则表达式,我不太清楚会不会有这个功能。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
36557832
2012-03-17 · TA获得超过11.4万个赞
知道顶级答主
回答量:7万
采纳率:0%
帮助的人:4.6亿
展开全部
这个要自己要自己写吧。或许有现成的第三方控件Google下吧。
似乎和编译原理的内容有关,以前课设的时候用过yacc,感觉要自己写的话比较麻烦。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式