将字符串拆分为多个变量

时间:2014-04-21 14:40:22

标签: vb.net

我试图将字符串拆分为数据以存储到多个变量中。我的字符串由以不同(随机)数量的空格分隔的数据组成。

"Mike Smith           123     23          33   2 1" 

我尝试过使用string.split方法但是我在存储数字数据时遇到了问题。

Dim strUserInfo As String
    Dim strFirstName, strLastName As String
    Dim intAvg, intHcp, intTotalPins, intGamesTracked As Integer
    strUserInfo = lstUsers.SelectedItem.ToString
    Dim strarr() As String
    strarr = strUserInfo.Split("."c)
    strFirstName = strarr(0)
    strLastName = strarr(1)

2 个答案:

答案 0 :(得分:1)

如果您不知道每个部分之间有多少个空格,您可能希望将此Split的重载与StringSplitOptions.RemoveEmptyEntries一起使用,如下所示:

strarr = strUserInfo.split(New Char() { " "c }, StringSplitOptions.RemoveEmptyEntries)

如果您想将Integer变量存储在strFirstName = strarr(0) strLastName = strarr(1) intAvg = CInt(strarr(2)) intHcp = CInt(strarr(3)) intTotalPins = CInt(strarr(4)) intGamesTracked = CInt(strarr(5)) 变量中,请使用CInt(或Integer.Parse),如下所示:

{{1}}

答案 1 :(得分:0)

解析它的另一种方法是使用正则表达式:

Imports System.Text.RegularExpressions

Dim input As String = "Mike Smith           123     23          33   2 1"
Dim matches = Regex.Matches(input, "\w+")
Dim output = (From match As Match In matches Select match.Value).ToArray