比如有这么一个字符串:
"1zwltop2gogogo3userid"
其中的'1','2','3'是固定的标号,其后的内容是变化的
我需要根据提取其中的标号提取后面的字串!
怎么做!没想通!帮帮忙

解决方案 »

  1.   

    是取得指定标号到下个标号之间的内容吗,若是就是这样
    Option ExplicitFunction GetString(str As String, xh As Integer) As String    Dim i As Integer, iPos As Integer, iPosNext As Integer
        
        iPos = InStr(1, str, CStr(xh))
        If iPos = 0 Then
            GetString = ""
            Exit Function
        End If
        
        iPosNext = InStr(iPos, str, CStr(xh + 1))
        If iPosNext = 0 Then
            iPosNext = Len(str) + 1
        End If
        
        GetString = Mid(str, iPos + 1, iPosNext - iPos - 1)
    End FunctionPrivate Sub Command1_Click()
        Dim str As String
        
        str = "1zwltop2gogogo3userid"
        MsgBox GetString(str, 1)
    End Sub
      

  2.   

    若是取得指定标号到字符串末尾则是这样
    Function GetString(str As String, xh As Integer) As String
        Dim i As Integer, iPos As Integer    iPos = InStr(1, str, CStr(xh))
        If iPos = 0 Then
            GetString = ""
            Exit Function
        End If
        
        GetString = Mid(str, iPos + 1)
    End FunctionPrivate Sub Command1_Click()
        Dim str As String
        
        str = "1zwltop2gogogo3userid"
        MsgBox GetString(str, 2)
    End Sub
      

  3.   

    用好InStr, InStrRev, Left, Right, Mid函数,就可以解决了。
      

  4.   

    用好InStr, InStrRev, Left, Right, Mid,spli,join函数,就可以解决了。