我给你演示一下取asdfsad("解散旁观者", "解散所有旁观者。", "确 认")sdfsdf
这句,先在窗体上放一个textbox(text1),将其text属性设置为:asdfsad("解散旁观者", "解散所有旁观者。", "确 认")sdfsdf
然后写入如下代码:
Private Sub Form_Load()
Dim i As Long, j As Long, str As String, strr() As String
Dim k As Long
StrSplit Text1, strr(), ","
For k = 0 To UBound(strr)
i = InStr(1, strr(k), """")
j = InStrRev(strr(k), """")
str = Mid(strr(k), i + 1, j - i - 1)
Debug.Print str
Next
End Sub
Public Sub StrSplit(lpString As String, VariableGoesHere() As String, sChar As String)
Dim intAccs As Long
Dim i As Integer
Dim lngSpacePos As Long, lngStart As Long
lpString = Trim$(lpString)
lngSpacePos = 1
lngSpacePos = InStr(lngSpacePos, lpString, sChar)
Do While lngSpacePos
intAccs = intAccs + 1
lngSpacePos = InStr(lngSpacePos + 1, lpString, sChar)
Loop
ReDim VariableGoesHere(intAccs)
lngStart = 1
For i = 0 To intAccs
lngSpacePos = InStr(lngStart, lpString, sChar)
If lngSpacePos Then
VariableGoesHere(i) = Mid(lpString, lngStart, lngSpacePos - lngStart)
lngStart = lngSpacePos + Len(sChar)
Else
VariableGoesHere(i) = Right(lpString, Len(lpString) - lngStart + 1)
End If
Next
End Sub
试试,需要修改
Private Sub Command1_Click()
Dim str1 As String
str1 = "asfd""我在广州"",""我喜欢VB"",(""呵呵"")asd"
FindStr str1
End Sub
Function FindStr(str1 As String)
Dim i As Integer
Dim j As Integer
i = InStr(str1, """")
j = InStr(Mid(str1, i + 1, Len(str1)), """")
If i <> 0 And j <> 0 Then
MsgBox Mid(str1, i + 1, j - 1)
FindStr Mid(str1, i + 1, Len(str1))
End If
End Function