VB.Net中的字符串函数是什么用于提取以某个字符开头并以某个字符结尾的字符串?

时间:2014-06-02 10:51:31

标签: vb.net string function

我有一个字符串:“* 45%235?35”。我想要的是从这一个提取数字字符串。所以我将 str1 =“45” str2 =“235” str3 =“35”

那么VB.Net中应该使用什么字符串函数来提取从某个字符开始并以某个特定字符结尾的字符串?谢谢

2 个答案:

答案 0 :(得分:1)

高效的方法,纯字符串方法:

Dim str = "*45%235?35"
Dim str1, str2, str3 As String
Dim sIndex, eIndex As Int32
sIndex = str.IndexOf("*")
If sIndex >= 0 Then
    sIndex += 1
    eIndex = str.IndexOf("%", sIndex)
    If eIndex >= 0 Then
        str1 = str.Substring(sIndex, eIndex - sIndex)
        sIndex = eIndex + 1
        eIndex = str.IndexOf("?", sIndex)
        If eIndex >= 0 Then
            str2 = str.Substring(sIndex, eIndex - sIndex)
            str3 = str.Substring(eIndex + 1)  ' Take rest
        End If
    End If
End If

如果订单始终相同,则可以使用。

答案 1 :(得分:1)

使用RegEX尝试这样的事情,你可以修改RegEx模式" \ D +"消除星号或只是忽略matchResults中的第一项

    Dim regexObj = New Regex("\D+", RegexOptions.IgnoreCase)
    Dim matchResults As String() = regexObj.Split("*45%235?35")
    For Each s As String In matchResults
        Console.WriteLine("{0}", s)
    Next