vb统计每个字母出现的次数用什么代码?
统计文本框中字母A、B、C、D字母出现的次数显示格式为:(txt1.text里)字母A出现的次数为xx字母B出现的次数为xx字母C出现的次数为xx字母D出现的次数为xx谁...
统计文本框中字母A、B、C、D字母出现的次数
显示格式为:(txt1.text里)
字母A出现的次数为xx
字母B出现的次数为xx
字母C出现的次数为xx
字母D出现的次数为xx
谁帮我编一段代码解一下。翻变了书里也没这段代码。
顺便帮忙注释下代码的意思,非常感谢。 展开
显示格式为:(txt1.text里)
字母A出现的次数为xx
字母B出现的次数为xx
字母C出现的次数为xx
字母D出现的次数为xx
谁帮我编一段代码解一下。翻变了书里也没这段代码。
顺便帮忙注释下代码的意思,非常感谢。 展开
5个回答
展开全部
Private Sub Form_Load()
Me.AutoRedraw = True
Text1 = "ABCDAABAAD"
Call tjcs
End Sub
Function tjcs()
Dim t As String, j As Long, s As String, a(4) As Long
t = Text1
For j = 1 To Len(t)
s = Mid(t, j, 1)
Select Case s
Case Is = "A"
a(1) = a(1) + 1
Case Is = "B"
a(2) = a(2) + 1
Case Is = "C"
a(3) = a(3) + 1
Case Is = "D"
a(4) = a(4) + 1
End Select
Next
For j = 1 To 4
Print Chr(Asc("A") + j - 1); a(j)
Next
End Function
2013-12-15
展开全部
第一种方法:使用split
temp = txt.text
arrA = split(temp,"A") ’---产生数组
ACount = UBound(arrB)-1 ‘---数组的长度
arrB = split(temp,"B")
BCount = UBound(arrB)-1
。。。。
第二种:使用正则表达式,引用里增加VBScript
ACount = RegExpTest("A",temp)
BCount = RegExpTest("B",temp)
CCount = RegExpTest("C",temp)
Function RegExpTest(patrn, strng)
Set regEx = CreateObject("VBScript.RegExp") '建立正则表达式对象
regEx.Pattern = patrn '设置模式
regEx.IgnoreCase = True '设置是否区分字符大小写
regEx.Global = True '设置全局可用性
Set matches = regEx.Execute(strng) '执行搜索
nCount = matches.count
RegExpTest = nCount ’--返回
End Function
第三种:使用 instr搜索,mid截取,while循环
ACount = GetCount(temp,"A")
BCount = GetCount(temp,"B")
CCount = GetCount(temp,"C")
function GetCount(temp,str1)
temp0 = temp
k = instr(temp0,str1) '--定位字符位置
ncount = 0
while k>0
temp0=mid(temp0,k+1) ’--截取字符串
k = instr(temp0,str1) ‘--重新定位字符位置
ncount = ncount + 1 ’--出现册数
loop
GetCount = nCount ‘--返回出现次数
End Function
temp = txt.text
arrA = split(temp,"A") ’---产生数组
ACount = UBound(arrB)-1 ‘---数组的长度
arrB = split(temp,"B")
BCount = UBound(arrB)-1
。。。。
第二种:使用正则表达式,引用里增加VBScript
ACount = RegExpTest("A",temp)
BCount = RegExpTest("B",temp)
CCount = RegExpTest("C",temp)
Function RegExpTest(patrn, strng)
Set regEx = CreateObject("VBScript.RegExp") '建立正则表达式对象
regEx.Pattern = patrn '设置模式
regEx.IgnoreCase = True '设置是否区分字符大小写
regEx.Global = True '设置全局可用性
Set matches = regEx.Execute(strng) '执行搜索
nCount = matches.count
RegExpTest = nCount ’--返回
End Function
第三种:使用 instr搜索,mid截取,while循环
ACount = GetCount(temp,"A")
BCount = GetCount(temp,"B")
CCount = GetCount(temp,"C")
function GetCount(temp,str1)
temp0 = temp
k = instr(temp0,str1) '--定位字符位置
ncount = 0
while k>0
temp0=mid(temp0,k+1) ’--截取字符串
k = instr(temp0,str1) ‘--重新定位字符位置
ncount = ncount + 1 ’--出现册数
loop
GetCount = nCount ‘--返回出现次数
End Function
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
解:text2为原字符串所在的文本框。
Private Sub Form_Click()
Dim a,b,c,d,i as integer
for i = 1 to len(text2.text)
if mid(text2.text,i,1)="A" then a=a+1
if mid(text2.text,i,1)="B" then b=b+1
if mid(text2.text,i,1)="C" then c=c+1
if mid(text2.text,i,1)="D" then d=d+1
next i
text1.text="字符A出现次数为" & a & VbLf &"字符B出现次数为" & b & VbLf &"字符C出现次数为" & c & VbLf &"字符D出现次数为" & d
end sub
Private Sub Form_Click()
Dim a,b,c,d,i as integer
for i = 1 to len(text2.text)
if mid(text2.text,i,1)="A" then a=a+1
if mid(text2.text,i,1)="B" then b=b+1
if mid(text2.text,i,1)="C" then c=c+1
if mid(text2.text,i,1)="D" then d=d+1
next i
text1.text="字符A出现次数为" & a & VbLf &"字符B出现次数为" & b & VbLf &"字符C出现次数为" & c & VbLf &"字符D出现次数为" & d
end sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Private Sub Form_Load() Dim file_name As String, zs As Long, zd() As Long, zs1() As Long, strline As String, tp As String
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询