0

我有一个用作控制台的文本框(在表单应用程序中)。

我想在用户输入时运行某个子:

broadcast blabla

潜艇会广播字符串blabla。程序如何只识别第一个单词?

像这样的东西会起作用吗?

If ConsoleInput.Text = "broadcast " & command Then
BroadcastMessage(command)
End If
4

1 回答 1

1

您可以使用String.Split

Dim words As String() = ConsoleInput.Text.Split({" "c}, StringSplitOptions.RemoveEmptyEntries)
If words.Length > 1 AndAlso words(0).ToLower() = "broadcast" Then
    BroadcastMessage(words(1))
End If

编辑:如果您想广播所有单词,最好使用String.Substring

Dim spaceIndex = ConsoleInput.Text.IndexOf(" "c)
If spaceIndex > -1 Then
    Dim firstWord = ConsoleInput.Text.Substring(0, spaceIndex)
    If firstWord.ToLower = "broadcast" Then
        broadcast(ConsoleInput.Text.Substring(spaceIndex + 1))
    End If
End If
于 2012-08-14T22:59:00.890 回答