如何拆分逗号分隔的字符串并将其存储到变量 VB Net

How to Split Comma Separated String and Store it in to Variables VB Net

我有一个像这样的逗号分隔字符串

Dim str as String = "1,5"
Dim num1, num2 As Integer 

我想要的是我想通过逗号分隔字符串并将这些值存储到新的整数变量中。分开后我想要这样的东西

num1 = 1
num2 = 5

我想做这样的事情。

 num1, num2 = Convert.ToInt32(str.Split(",")) 

这在 Python 中是可能的,但我不知道如何在这里做到这一点

您可以拆分字符串并分配给这样的变量:

Private Sub AssignVars()

    Dim str As String = "1,5"
    Dim num1, num2 As Integer
    Dim results() As String

    results = str.Split(Convert.ToChar(","))

    For pos As Integer = 0 To results.Count - 1
        Select Case pos
            Case 0
                Integer.TryParse(results(pos), num1)
            Case 1
                Integer.TryParse(results(pos), num2)
            Case Else
                'error handle?
        End Select
    Next


End Sub

如果您担心 for-case anti-pattern

Private Sub AssignVars()

    Dim str As String = "1,5"
    Dim num1, num2 As Integer
    Dim results() As String

    results = str.Split(Convert.ToChar(","))

    Integer.TryParse(results(0), num1)
    Integer.TryParse(results(1), num2)

End Sub

另一种方法

    Dim str As String = "b,1,,5,a,,6"
    Dim num1, num2 As Integer
    Dim results() As Integer

    results = (From s In str.Split(","c)
                Where Integer.TryParse(s, Nothing)
                Select Integer.Parse(s) Take 2).ToArray

    If results.Length = 2 Then
        num1 = results(0)
        num2 = results(1)
    Else
        'error
    End If