我最近开始使用Visual Basic,所以我对它不是很熟悉。我是计算新手所以请耐心等待!我正在尝试制作一个表单程序来计算句子中的特定单词。从我的代码中可以看出,我还没有达到目标。我所要做的就是告诉我两个文本框是否匹配。如果有人能帮我解决问题,我将非常感激!非常感谢。
代码:
Public Class Form1
Dim Counter As Integer = 0
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If Word.Text = Sentence.Text Then
Counter1.Text = Counter + 1
End If
End Sub
End Class
答案 0 :(得分:0)
VB.NET和C#使用相同的底层对象模型,因此您可以调整exising C# solution。
以下是您的子视图的外观:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If Word.Text.Length = 0 Then
counter = 0
Else
counter = ( Sentence.Text.Length - Sentence.Text.Replace(Word.Text,"").Length ) / Word.Text.Length
End If
Counter1.Text = counter
End Sub
此方法一次性计算所有发生次数,没有循环,因此您不需要增量器。
正如@ romulus001所提到的,Word.Text
的长度可能为零,所以应该在除以它之前检查。如果Word.Text
的长度为零,那么您想要的计数可能为零,因为您实际上什么也没找。
答案 1 :(得分:0)
我不知道它是否必须区分大小写,但您可以使用以下代码之一:
1)
Counter = Sentence.Text.split(Word.Text).Length - 1 'if the search is case sensitive
2)
Counter = Sentence.Text.toUpper.split(Word.Text.toUpper).Length - 1 'if the search is NOT case sensitive`
然后:
Counter1.Text = Counter