如何从vb.net中的表达式中获取价值

时间:2016-01-08 16:04:35

标签: vb.net get

我有以下字符串表达式:

str="1+2+3+4"

现在从这个字符串我想要number(10)的值。如何从此表达式中获取此值?

2 个答案:

答案 0 :(得分:0)

要实现这一点,您必须解析所有数字,例如

Dim str As String= "1+2+3+4"
Dim numbers() As String = str.Split('+')
Dim result As Integer = 0
For Each number As String In numbers
    result += Integer.Parse(number)
Next

答案 1 :(得分:0)

以下是使用Linq的替代解决方案。这个解决方案排除了无法解析的任何内容......

 YOURSTRING.Split("+").ToList.Where(Function(sr) Not String.IsNullOrEmpty(sr) AndAlso Integer.TryParse(sr, New Integer)).Sum(Function(s As String) Integer.Parse(s))

示例输出

  1. 1 + 2 + 3 + 4 = 10
  2. 1 + 2 + 3 + 4 ++ 12 + 1 = 23 (注意拼写错误( 4 ++ 12 ),即使出现错误仍然有效)