求用VB实现--字母统计 求高手解答
字母统计要求:(1)输入任意一段英文。(2)统计(1)中各字母出现的概率。(3)具有输入输出界面,并对输入的数字和其他符号给予提示。求具体代码和编程过程求高手...
字母统计
要求:(1)输入任意一段英文。
(2)统计(1)中各字母出现的概率。
(3)具有输入输出界面,并对输入的数字和其他符号给予提示。
求具体代码和编程过程 求高手 展开
要求:(1)输入任意一段英文。
(2)统计(1)中各字母出现的概率。
(3)具有输入输出界面,并对输入的数字和其他符号给予提示。
求具体代码和编程过程 求高手 展开
1个回答
展开全部
引用一下正则
Function CharNo(s$, p$) As Integer
Dim mh As Match
Dim mhs As MatchCollection
Dim re As RegExp
Set re = New RegExp
re.IgnoreCase = True '设置不匹配大小写
re.Pattern = p
re.Global = True
s = Text1.Text
Set mhs = re.Execute(s)
For Each mh In mhs
CharNo = CharNo + 1
Next
End Function
Private Sub Command1_Click()
Dim gailv As Single
If Text1.Text = "" Or Text2.Text = "" Then MsgBox "请输入相关数据"
gailv = CharNo(Text1.Text, Text2.Text) / Len(Text1.Text)
MsgBox Text2.Text & "出现的概率为" & gailv
End Sub
Private Sub Form_Load()
Text1.IMEMode = 3 '输入的英文字母
Text2.IMEMode = 3 '要统计的字母
Timer1.Enabled = True
Timer1.Interval = 200
End Sub
Private Sub Timer1_Timer() '检测输入是否为英文
If Text1.Text = "" Or Text2.Text = "" Then Exit Sub
If CharNo(Text1.Text, "[%&',;=?$\x22]+") > 0 Or CharNo(Text1.Text, "\d+") > 0 Then
MsgBox "只能输入英文字母"
Text1.Text = ""
End If
End Sub
Function CharNo(s$, p$) As Integer
Dim mh As Match
Dim mhs As MatchCollection
Dim re As RegExp
Set re = New RegExp
re.IgnoreCase = True '设置不匹配大小写
re.Pattern = p
re.Global = True
s = Text1.Text
Set mhs = re.Execute(s)
For Each mh In mhs
CharNo = CharNo + 1
Next
End Function
Private Sub Command1_Click()
Dim gailv As Single
If Text1.Text = "" Or Text2.Text = "" Then MsgBox "请输入相关数据"
gailv = CharNo(Text1.Text, Text2.Text) / Len(Text1.Text)
MsgBox Text2.Text & "出现的概率为" & gailv
End Sub
Private Sub Form_Load()
Text1.IMEMode = 3 '输入的英文字母
Text2.IMEMode = 3 '要统计的字母
Timer1.Enabled = True
Timer1.Interval = 200
End Sub
Private Sub Timer1_Timer() '检测输入是否为英文
If Text1.Text = "" Or Text2.Text = "" Then Exit Sub
If CharNo(Text1.Text, "[%&',;=?$\x22]+") > 0 Or CharNo(Text1.Text, "\d+") > 0 Then
MsgBox "只能输入英文字母"
Text1.Text = ""
End If
End Sub
追问
谢谢,但我无法运行,显示用户定义类型未定义mh As Match
追答
引用一下正则
Microsoft VBScript Regular Expressions 5.5
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询