VB 怎么知道字符串里有多少个相同字符

来源:百度知道 编辑:UC知道 时间:2024/07/07 21:06:31
我新手,想知道一个字符串里有多少个相同字符。
比如 a,b,c,d,e,f 要知道里面有多少个“,”号,不要用循环的那种,因为我数据很大,那样 找太慢了。谢谢高手指点

出现次数=(len(文本)-len(replace(文本,",","")))/len(",")
也就是将你要找的字符替换成空,不是空格,用原来的文本长度减去替换后的长度,除以你要查找的字符长度就是出现次数了,速度很快

VB 字符串匹配的KMP算法2008-10-09 10:20
Option Explicit
Dim I As Long, J As Long
'字符串匹配的KMP算法

Private Sub Command1_Click()
'* 需匹配的字节数组
Dim P() As Byte
'* 源文件字节数组
Dim S() As Byte
Dim txt As String
Dim Fnum As Long
txt = App.Path & "\Sample"
Fnum = FreeFile
Open txt For Binary As #Fnum
ReDim S(1 To FileLen(txt))
Get #Fnum, , S
Close #Fnum
ReDim P(1 To Len(Text1.Text) / 2)
For I = 1 To Len(Text1.Text) / 2
P(I) = CInt("&H" & Mid(Text1.Text, I * 2 - 1, 2))
Next
Print InByteArray(CInt(Text2.Text), P(), S())
End Sub

'*************************************************************************
'**函 数 名:InStrByteArray
'**输 入:P()(Byte) - 需匹配的字节数组
'** :S()(Byte) - 源文件