VB.net在非字母数字非连字符上拆分字符串

时间:2012-05-24 21:13:43

标签: vb.net string split

对于循环有没有比这更好的方法?

基本上,对于从要拆分的字符串创建的charArray中的每个字符,如果字符是字母,数字或连字符,我将其附加到临时字符串。当我看到一个拆分字符或最后一个字符,并且临时字符串有值时,我将它添加到集合中以返回。

    For i As Integer = 0 To (charArrayLength - 1)

        charToInspect = CChar(charArray.GetValue(i))

        If IsLetterOrDigit(charToInspect) Or charToInspect = hyphen Then
            tempString = tempString + charToInspect

            If i = (charArrayLength - 1) Then
               listOfStringToReturn.Add(tempString)
            End If

        ElseIf tempString.Length > 0 Then
            listOfStringToReturn.Add(tempString)
            tempString = String.Empty

        End If
    Next

    Return listOfStringToReturn

1 个答案:

答案 0 :(得分:4)

string.Split方法已提供此逻辑,该方法会将可能的分隔符字符列表拆分。

Return myString.Split("-"C)

如果您有更复杂的分隔符,可以查看Regex.Split