STR="(2 * (1000 + 0) + 2 * (1000 + 0) + 0 * (1000 + 0)) * 1 * 1 + 30"
现在如何把STR的值算出来为4030,而不是0。谢谢!

解决方案 »

  1.   

    哦  要引用一个vbscript的object, 然后用他的eval来做 ?
    具体语句忘了,得查查了
      

  2.   

    可以把这段字符串带入select语句中,计算得到。
    如果不用sql,则必须要楼主自己分析了。
    可以用两个数组,类似堆栈,一个存放数字,一个存放符号
    这个是个很简单的模型,我以前编24点计算时就用到过。
    希望对楼主有用。
      

  3.   

    引用一个vbscript的object,怎么引用,如果用带入select语句的话,又要怎么实现,楼上的可以写的详细点吗?
      

  4.   

    Dim s
    Dim str1 As String    str1 = "(2 * (1000 + 0) + 2 * (1000 + 0) + 0 * (1000 + 0)) * 1 * 1 + 30"
        Set s = CreateObject("ScriptControl")
        s.Language = "VBScript"
        MsgBox s.Eval(str1)
        Set s = Nothing