应该没有吧可以自已做一个吧。。dim t_str as string dim d_str as string dim c_str as string dim n as long dim l as long d_str="sa;sldkja;sldkfja;jdkaksdjf" c_str="a" t_str=d_str l=instr(t_str,c_str) do while l>0 t_str=right(t_str,len(t_str)-l) l=instr(t_str,c_str) n=n+1 loop msgbox n & "次"
没有,不过也很容易写: Private Sub Command1_Click() MsgBox GetSubStringNum("ABaabbbdseeABsae2331ABadsdas", "ABa") End Sub
Private Function GetSubStringNum(ByVal str As String, substr As String) As Long On Error Resume Next If Len(substr) = 0 Then MsgBox "子串无内容,请重新输入" Exit Function Else GetSubStringNum = (Len(str) - Len(Replace(str, substr, ""))) / Len(substr) End If End Function
自己设一个全局变量为key,来记录次数不行吗
sorry,我是说自己用KMP算法匹配不行吗
to 谢谢大家了, 偷懒不成,那只好自己写了 我个人为 rainstormmaster(rainstormmaster) 的方法比较适合我的,xixi.
dim d_str as string
dim c_str as string
dim n as long
dim l as long
d_str="sa;sldkja;sldkfja;jdkaksdjf"
c_str="a"
t_str=d_str
l=instr(t_str,c_str)
do while l>0
t_str=right(t_str,len(t_str)-l)
l=instr(t_str,c_str)
n=n+1
loop
msgbox n & "次"
Private Sub Command1_Click()
MsgBox GetSubStringNum("ABaabbbdseeABsae2331ABadsdas", "ABa")
End Sub
Private Function GetSubStringNum(ByVal str As String, substr As String) As Long
On Error Resume Next
If Len(substr) = 0 Then
MsgBox "子串无内容,请重新输入"
Exit Function
Else
GetSubStringNum = (Len(str) - Len(Replace(str, substr, ""))) / Len(substr)
End If
End Function
偷懒不成,那只好自己写了
我个人为 rainstormmaster(rainstormmaster) 的方法比较适合我的,xixi.