VB.NET:在逗号后获取字符串,并将其插入组合框

时间:2018-10-25 06:06:42

标签: string vb.net

我知道这已经是一个问题了,可能很接近,但是我需要一个准确的答案。我已经在互联网上进行搜索,为其他人阅读其他问题,阅读文档和博客,

这是我的情况:

例如我有一个String

Processed Title: 2017002652, 2017002655, BN-42, H-14356, N-253050, QOCT-1031

运行这段代码后,

 Dim word As String = "Processed Title: 2017002652, 2017002655, BN-42, H-14356, N-253050, QOCT-1031"
 Dim wordArr As String() = word.Split(": ")
 Dim result As String = wordArr(1)
 txtTitleNo.Text = result
 txtTitleNo.Text = txtTitleNo.Text.Replace(" ", "")

结果是这样的,

2017002652,2017002655,BN-42,H-14356,N-253050,QOCT-1031

单词Processed Title:被删除,空格也被删除。

现在我要实现的是,我想在逗号后分别获取字符串并插入到ComboBox中,因此Combobox的值是这样的

例如第一个是:

2017002652

秒是:

2017002655

第三个是:

BN-42

以此类推..

任何想法都会有很大帮助。

1 个答案:

答案 0 :(得分:0)

您总是可以再次运行string.split()

Dim word As String = "Processed Title: 2017002652, 2017002655, BN-42, H-14356, N-253050, QOCT-1031"
Dim wordArr As String() = word.Split(": ")(1).Split(", ")
For Each result As String In wordArr
    Console.WriteLine(result)
Next

或者,如果您想要一个“漂亮的”一步解决方案,则可以使用正则表达式

正则表达式:
(?<=: |, )[^,]+

Imports System
Imports System.Text.RegularExpressions

Public Module Module1

    Public Sub Main()
        For Each result As Match In Regex.Matches("Processed Title: 2017002652, 2017002655, BN-42, H-14356, N-253050, QOCT-1031", "(?<=: |, )[^,]+")
            Console.WriteLine(result.Value)
        Next
    End Sub
End Module

Demonstration