如何评估(数学)字符串表达式,vb.net

Igz*_*gzo 2 vb.net

我不确定我使用的术语是否正确.但我有一个字符串表达式,我希望它被计算.这个例子

Dim S = "4+4"
dim result = evaluate(S) 'some sort of treatment // that return 8
Run Code Online (Sandbox Code Playgroud)

我不确定这是怎么回事.我熟悉JS eval函数.但似乎我需要添加某种类型的库.而且我不想那样做.我找到了一些关于使用的链接

dim s = new expression("4+4") 
Run Code Online (Sandbox Code Playgroud)

并获得结果

s.evaluate()
Run Code Online (Sandbox Code Playgroud)

但这需要添加另一个库.正如我之前所说的,我不想使用任何库.我只是想要一个如何进行的解决方案?我撞墙了.顺便说一下,我仍然是一个初学者尝试回答尽可能简单,我会很感激.

Tim*_*ter 7

你可以使用DataTable.Compute- "技巧":

Dim tbl = new DataTable()
Dim result = Convert.ToDouble(tbl.Compute("4+4", Nothing))
Run Code Online (Sandbox Code Playgroud)

表达式支持以下算术运算符:

+ (addition)
- (subtraction)
* (multiplication)
/ (division)
% (modulus)
Run Code Online (Sandbox Code Playgroud)

更多信息:DataColumn.Expression表达式语法.