vb檢測某個字串個數
- 2022-08-13
你看這個程式怎麼樣,單擊Command1即可。
程式碼如下。
===============
Dim s As String, a() As Long, i As Long
Private Sub Command1_Click()
s = “我知道嗎,我知道什麼?不知道”
ReDim a(0)
a(0) = 1
Do
i = i + 1
ReDim Preserve a(i)
a(i) = InStr(a(i - 1) + 1, s, “道”)
If a(i) = 0 Then Exit Do
Print a(i)
Loop
End Sub
使用instr函式來檢測
例如:
dim s as string
dim i as long
s=“hello$world!”
i=instr(s,“$”) ‘檢測字串s中是否含有$,並返回$的位置,此處$是第6個字元,所以返回6,即i=6,如果不存在則返回0
if i>0 then
msgbox “存在”
else
msgbox “不存在”
end if
問題上面已經回答了,不久前寫過一個相似的程式,是統計相同字及其個數的,請笑納:
在窗體裡建一個文字框text1,一個按鈕command1,在文字框裡輸入“我知道嗎,我知道什麼?不知道”,按按鈕後,窗體裡會按以上進行統計,程式碼:
Private Function stringnum(s1 As String, s2 As String) As Integer
Dim i As Integer
Dim n As Integer
If InStr(s1, s2) = 0 Then
stringnum = 0
Else
n = InStr(s1, s2)
Do
i = i + 1
n = InStr(n + 1, s1, s2)
Loop Until n = 0
stringnum = i
End If
End Function
Private Sub Command1_Click()
Dim sum As Integer
Dim temp As Integer
Dim s() As String
Dim n() As Integer
Do
For i = 1 To Len(Text1。Text)
If stringnum(Text1。Text, Mid(Text1。Text, i, 1)) > 1 Then
temp = temp + 1
ReDim Preserve s(1 To temp)
s(temp) = Mid(Text1。Text, i, 1)
Exit For
End If
If i = Len(Text1。Text) Then
Print “總數為:” & sum & “個”
Exit Sub
End If
Next
ReDim Preserve n(1 To temp)
n(temp) = stringnum(Text1。Text, s(temp))
Print “你要查詢的數里的相同數有:” & s(temp) & “(” & n(temp) & “個)”
sum = sum + n(temp)
Text1。Text = Replace(Text1。Text, s(temp), “”)
Loop
End Sub
a = “我知道嗎,我知道什麼?不知道”
For i = 1 To Len(a)
i = InStr(i, a, “道”)
If i = 0 Then Exit Sub
c = c & “ ” & i
Next
MsgBox c
用mid來查詢
a=“我知道嗎,我知道什麼?不知道”
b=“道”
for i=1 to len(a)
if mid(a,i,1)=b then
c=c&“,”&i
end if
next
msgbox b&“分別在”&c&“出現過”