4

次のコードを使用して、文字列を分割して取得しています。

Private Sub Button1_Click(sender As Object, e As EventArgs) 
      Handles Button1.Click
    Dim s As String = "a,bc,def,ghij,klmno"
    Dim parts As String() = s.Split(New Char() {","c})
    Dim part As String

    For Each part In parts
        MsgBox(part(0))
    Next

End Sub

ただし、メッセージ ボックスには、分割された各 の最初の文字のみが表示されますstring (a,b,d,g,k)

最初の単語だけを表示したいのですが、何が間違っていますか?

4

3 に答える 3

5

あなたの質問からは明らかではありませんが、文字列の配列の最初の単語だけが必要な場合は、ループする必要はありません

 Dim firstWord = parts(0)
 Console.WriteLine(firstWord) ' Should print `a` from your text sample

 ' or simply
 Console.WriteLine(parts(0)) 

 ' and the second word is     
 Console.WriteLine(parts(1))  ' prints `bc`
于 2013-02-01T20:48:55.757 に答える
2

すでに各パーツを持っています - それを表示するだけです:

For Each part In parts
  MsgBox(part)
Next

part(0)文字コレクション内の文字列である最初のアイテムを返します。

返された文字列配列に特定のインデックスが必要な場合 (コメントで示唆されているように)、直接アクセスするだけです。

Dim parts As String() = s.Split(New Char() {","c})
Dim firstPart As String = parts(0)
Dim thirdPart As String = parts(2)
于 2013-02-01T20:46:30.723 に答える
0

part表示しない必要がありますpart(0)

For Each part In parts

     MsgBox(part)
    Next
于 2013-02-01T20:47:42.357 に答える