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 に答える