如何在vb.net中将字符串拆分为列表/数组

Huy*_*man 5 vb.net

我有一个像这样的长字符串:

"data source=qa2;initial catalog=rr;persist security info=True;user id=ka;password=lalala;Connection Timeout=60"
Run Code Online (Sandbox Code Playgroud)

我想分割它让我们说到字符串列表,列表应该像:

Dim list As New List(Of String)
list(0) = qa2
List(1) = rr
List(2)= True
List(3) = ka
.......
Run Code Online (Sandbox Code Playgroud)

如何使用VB.Net代码拆分它?

Ste*_*art 6

正如其他人所说,String.Split是明显的选择.但是,由于字符串似乎是SQL Server连接字符串,您可能还需要考虑使用SqlConnectionStringBuilder该类来解析连接字符串.例如:

Dim builder As New SqlConnectionStringBuilder("data source=qa2;initial catalog=rr;persist security info=True;user id=ka;password=lalala;Connection Timeout=60")
Console.WriteLine("Data Source: " & builder.DataSource)
Console.WriteLine("Initial Catalog: " & builder.InitialCatalog)
' ...
Run Code Online (Sandbox Code Playgroud)


Bla*_*ood 5

您可以使用String.Split将项目拆分为";" 字符然后再次以"="字符分割每个项目.

Dim str As String = "data source=qa2;initial catalog=rr;persist security info=True;user id=ka;password=lalala;Connection Timeout=60"
Dim items() As String = str.Split(";"c)
Dim list As New List(Of String)
For i As Integer = 0 To items.Length - 1
    Dim elems() As String = items(i).Split("="c)
    If elems.Length > 1 Then list.Add(elems(1).Trim) Else list.Add("")
Next
Run Code Online (Sandbox Code Playgroud)