【问题标题】:Splitting a string on comma and printing the results用逗号分割字符串并打印结果
【发布时间】:2013-02-01 20:45:56
【问题描述】:

我正在使用以下代码来拆分字符串并检索它们:

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) 中的第一个字符。

我只想显示第一个单词,我做错了什么?

【问题讨论】:

    标签: vb.net string split


    【解决方案1】:

    您的问题并不清楚,但如果您只想要字符串数组中的 第一个单词,则无需循环遍历它

     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`
    

    【讨论】:

      【解决方案2】:

      您已经拥有每个部分 - 只需显示它:

      For Each part In parts
        MsgBox(part)
      Next
      

      part(0) 将返回字符集合中作为字符串的第一项。

      如果您想要返回的字符串数组中的特定索引(如您的 comment 建议的那样),只需直接访问它:

      Dim parts As String() = s.Split(New Char() {","c})
      Dim firstPart As String = parts(0)
      Dim thirdPart As String = parts(2)
      

      【讨论】:

      • 但我只想要第一部分或第二部分或第三部分,我想选择。
      • @SamuelMedhat - 您没有在问题中指定。在这种情况下,为什么For Each 超过parts?只需直接访问您想要的 - 第一个是 parts(0),第三个是 parts(2)(注意我使用的是 parts,而不是 part)。
      【解决方案3】:

      您需要显示part 而不是part(0)

      For Each part In parts
      
           MsgBox(part)
          Next
      

      【讨论】:

        猜你喜欢
        • 2020-08-30
        • 2014-04-28
        • 1970-01-01
        • 2016-05-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多