2017-02-09 60 views
1

我需要在Visual Basic中生成识别字词位置的代码。例如,我的句子可以写'这是我的Visual Basic项目'。如果用户输入单词“我的”,输出将打开另一个表单,显示“你的单词在第三位”。它需要使用字符串然后将其分割成数组,然后使用匹配功能为每个单词指定单独的属性/位置。项目任务1

我是相当新的编程,并会喜欢任何帮助。如果你能为我的设计返回一些代码,例如按钮和列表框,我将不胜感激。我非常努力地试图让这个程序完全运作,但我发现它非常具有挑战性。

真的请。非常感谢!!

+1

[Visual Basic:识别单词的位置]的可能重复(http://stackoverflow.com/questions/41920648/visual-basic-identifying-a-words-position) –

+1

您需要显示一些努力才能获得答案在这里..例如代码和你不能理解....但先做一些研究...回复此内容https://msdn.microsoft.com/en-us/library/dd789093.aspx尤其是分裂函数。 –

回答

0

首先,我不是一个Visual Basic或.NET人员,但我真的很喜欢这个问题,所以我的代码优化是可能的。我有点困惑,你是什么意思的比赛功能。你在寻找REGEX还是在这里寻找字符串匹配的东西? 无论如何,根据您的描述,我试图为您编写一些代码,我认为这是您正在寻找的东西。

enter image description here

A pop up message, which you can replace with another form too

CODE:

整个逻辑是按钮 “字的FIND POSITION” 的点击内。拆分句子,然后将输入的单词与句子中的每个单词进行比较

Public Class FindTheWord 
Private Sub buttonFindTheWord_Click(sender As Object, e As EventArgs) Handles buttonFindTheWord.Click 
    Dim inputSentence As String = TextBox1.Text 
    Dim inputWord As String = TextBox2.Text 
    Dim SplittedSentence As String() = inputSentence.Split(" ") 
    Dim Position As Integer = 0 
    For Each word In SplittedSentence 
     Position = Position + 1 
     If (word = inputWord) Then 
      MessageBox.Show("Your word is at position : " + Position.ToString) 
     End If 
    Next 
End Sub End Class 

希望这会有所帮助。

+1

非常感谢,我非常感谢!我将开始编写代码并向您反馈! –

+0

@ K.Smith如果你可以选择这个作为最好的答案:-) – Nish

+1

我的程序开始工作,但它似乎只能用在句框中的一个单词,也不相关我的列表框,因为它在运行程序时仍然可见。为了解决这个问题,3,4,5和3,4行需要公开而不是私下的? –