第1个回答 2013-03-19
函数: Instr()的使用:
Instr(Start,Str1,Str2)三个参数
Str1 -- 被搜索的源字符串
Str2 -- 要寻找的子字符串
Start -- 开始寻找的位置
例如:
s1 = "<P>aaaaaaaaaaa</p><P>SSSSSSSSSS</p><P>DDDDDDDDDDDDD</p>"
s2 ="<P>"
那么:Instr(1,s1,s2) 表示在s1里从左第1个字符开始寻找字符串s2
如果找到,就返回匹配的位置,本例返回 1
如果找不到,就返回0
如果在第1次找到后,继续找第2个匹配的位置,那么
下一次开始找的位置应该是本次找到的值 + 要找的子字符串的长度
本例第1次返回 1,而子字符串长度为3,下一次找要丛第4位开始找,即
Instr(4,s1,s2)
通常:用循环来实现
s1 = "abc123456abc11111abc111222333"
s2 = "abc"
i = 1
L = 1
Do While InStr(L, s1, s2) <> 0
Print "第" & i & "个" & s2 & "在位置" & InStr(L, s1, s2)
L = InStr(L, s1, s2) + Len(s2)
i = i + 1
Loop
第2个回答 2013-03-19
Dim str As String
Dim lpostion As Long
Dim lcnt As Long
str = "<P>aaaaaaaaaaa</p><P>SSSSSSSSSS</p><P>DDDDDDDDDDDDD</p><P>FFFFFFFFFF</p><P>GGGGGGGGGGGGG/p>"
lpostion = InStr(str, "<P>")
Do While lpostion <> 0
lcnt = lcnt + 1
Print "<P>" & "第" & lcnt & "次,位置" & lpostion
lpostion = InStr(lpostion + Len("<P>"), str, "<P>")
Loop