dim i as integer,j as integer
i=1
do while mid(sData,i,1)<>"#"
i=i+1
loop
j=i
do while mid(sData,j,1)<>" "
j=j+1
loop
str1=mid(sData,i,j-i-1)
str2=mid(sData,j,len(Sdata)-j)
其中,str1和str2分别就是你要的两个子字段。
i=1
do while mid(sData,i,1)<>"#"
i=i+1
loop
j=i
do while mid(sData,j,1)<>" "
j=j+1
loop
str1=mid(sData,i,j-i-1)
str2=mid(sData,j,len(Sdata)-j)
其中,str1和str2分别就是你要的两个子字段。
i=instr(sData,"#")+1
t=instr(sData," ")-i
sData=mid(sData,i,t)
"weriuo laiuwe #werou liwuer"
dim strValue as string
dim strChildString as stringstrValue="fdsfs#fsfjnklnvkln"lngPos=instr(1,strValue,"#")
if lngPos>0 then
strChildString=mid(strValue,lngPos+1)
else
strChildString=""
end if
'strChildString 就是想要得到的子串
先找出特殊字符的位置,然后用mid()函数取出子串不就可以了
要达到具体标志之间的字符串,请类推。Dim rs() As StringPrivate Function Delimiter(ByVal texte As String, ByVal delimiter1 As String, ByVal delimiter2 As String) As Variant
Dim interne() As String
Dim cpt As Integer
Dim Flag1 As Boolean
Dim flag2 As Boolean
ReDim Preserve interne(1)
qte = 1
Do While cpt < Len(texte)
cpt = cpt + 1
Debug.Print Mid$(texte, cpt, 1)
If Mid$(texte, cpt, 1) = delimiter1 And Not Flag1 Then
Flag1 = True
GoTo lenext
End If
If Mid$(texte, cpt, 1) = delimiter2 And Flag1 = True Then
Flag1 = False
flag2 = True
qte = qte + 1
ReDim Preserve interne(qte + 1)
GoTo lenext
End If
If Flag1 Then interne(qte) = interne(qte) & Mid$(texte, cpt, 1)
lenext:
Loop
Delimiter = interne
End Function