Evaluate mathematical expression from a string using VB

前端 未结 3 564
小蘑菇
小蘑菇 2020-12-02 00:03

I want to calculate a arithmetic expression from a string using VB, any ideas ?

As an example : \"x+2\" from a textbox, I want to evaluate the expression

相关标签:
3条回答
  • 2020-12-02 00:34

    You can use mxparser library for this purpose.Give a reference to mxparser.dll in your project by clicking ADD Reference button of Microsoft Visual Studio.The mxparser library source code or latest dll file can be from www.mathparser.org.The mXparser is a Math Parser for Java, Android, C# .NET (CLS) Libraries.

    Imports org.mariuszgromada.math.mxparser
    Private Function evaluate(ByVal str As String) AS Double
    Dim expr As Expression = New Expression(str)
    DIM d1 As Double
    d1=0
    d1=expr.calculate()
    return d1
    End Function
    

    Call to the function can be as follows.

    DIM str as String
    str=""
    str=((45^5)/45))*(5*6)
    
    Dim d as Double
    d=0
    d=evaluate(str)
    MsgBox(" The result of the expression is   " + d.ToString)
    
    0 讨论(0)
  • 2020-12-02 00:37

    you can use NCalc for this. It also accepts parameters like x, y, z,...

    Dim e As Expression = new Expression("2 + 3 * 5")
    Msgbox(17 = e.Evaluate())
    
    0 讨论(0)
  • 2020-12-02 00:40
    Dim equation As String = "2+6/2"
    Dim result = New DataTable().Compute(equation, Nothing)
    
    0 讨论(0)
提交回复
热议问题