使用一個單重的循環(huán)掃描這個字符串中的所有字符,對每一個字符的出現(xiàn)次數(shù)進行統(tǒng)計,最后輸出每個字符的出現(xiàn)次數(shù)。
創(chuàng)新互聯(lián)主營廣靈網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,重慶APP軟件開發(fā),廣靈h5成都小程序開發(fā)搭建,廣靈網(wǎng)站營銷推廣歡迎廣靈等地區(qū)企業(yè)咨詢
Private Sub Command1_Click()
s = InputBox("請輸入一個英文字符串:")
Dim a(128) As Integer
For i = 1 To Len(s)
t = Asc(Mid(s, i, 1))
a(t) = a(t) + 1
Next i
For i = 1 To 127
If a(i) 0 Then Print Chr(i); ":"; a(i)
Next i
End Sub
比如數(shù)組a。里面有5個值,其中有3個是重復的?
如果這樣的話,很好辦哦。
新建一個數(shù)組b,然后遍歷要去除的數(shù)組a,
從a中把每一個都取出來,和新建的b里面的去比,如果有相同的,則不放入b,
否則就放入數(shù)組b,直到循環(huán)結束。
有許多字符串操作技巧可以幫助你優(yōu)化代碼,以獲得更好的性能。StringBuilder允許你執(zhí)行重復的字符串操作,取得比手工操作更佳的性能。在本文中,我說明在VB.NET中利用StringBuilder的情況。應用StringBuilder的優(yōu)點StringBuilder是一個可修改字符的緩沖器。當你不直接進行字符串操作而應用StringBuilder時,與每次重復生成一個含有修正的新字符串相比,這樣可以獲得更佳的性能。你不能總是希望性能得到提高,因為StringBuilder有少量的過度操作,會將指定字符串的內(nèi)容復制到StringBuilder中,然后將由StringBuilder得到的結果值復制回字符串對象中。在進行二個或更多字符串操作時,我建議使用StringBuilder。(如果只有一項改變,將值復制進StringBuilder再拷貝出來并不會改善性能。)StringBuilder方法Append:允許你在緩沖器末端增加一個字符串。注意,在應用StringBuilder對象時不能使用操作符。
Insert:允許你在StringBuilder對象中增加一個字符串。(就像String.Insert一樣。)
Remove:允許你從StringBuilder對象中刪除一個字符串。(就像String.Remove一樣。)
Replace:允許你替代StringBuilder對象的一部分。(就像String.Replace一樣。)
實例在列表A的樣本代碼中,我建立一個字符串變量strOriginal來保存原始文本的值。我還定義StringBuilder對象BuilderStr,我將利用它對存儲在srtOriginal中的文本進行字符串操作。定義BuilderStr時,我將它設定到strOriginal的值中。之后,我操作BuilderStr,給它添加一些文本(“is”,
”very”,”
important”),然后再利用Replace方法去掉”very”這個單詞。(注意,在這個例子中,你使用Remove方法而非Replace方法。)最后,我用BuilderStr.ToString的值更新strOriginal,并在信息框中顯示所得到的字符串。
用法 RndString(xx) xx為隨機數(shù)字長度
比如12位長度的隨機字符串 則為 RndString(12)
字符串包含數(shù)字和大小寫字母,函數(shù)如下:
Function RndString(ByVal l As Integer) As String
Randomize()
Dim R, i As Integer
Dim S As Char
Dim returnStr As String
returnStr = ""
'a-z 的ASCII碼是:97-122
'A-Z 的ASCII碼是:65-90
'0-9 的ASCII碼是:48-57
For i = 1 To l
R = Int(Rnd() * 62) '隨機生成的字符有大小寫字母和數(shù)字,共有26個
If R 10 Then '如果小于10,則是數(shù)字 數(shù)字的ASCII是48-57 對應 隨機數(shù)字 0-9 所以要將隨機數(shù)字加48
S = Chr(R + 48) 'Chr 是將把數(shù)字按Ascii碼轉換為對應的字符
ElseIf R 36 Then '如果小于36,則是大寫字母 大寫字母的ASCII是65-90 對應 隨機數(shù)字10-35 所以要將隨機數(shù)字加55
S = Chr(R + 55)
Else '如果大于36,則是小寫字母 小寫字母的ASCII是97-122 對應 隨機數(shù)字36-62 所以要將隨機數(shù)字加61
S = Chr(R + 61)
End If
returnStr = returnStr + S
Next
RndString = returnStr
End Function