如何在vb.net中获取两个不同分隔符内的字符串

如何在vb.net中获取两个不同分隔符内的字符串,vb.net,string,split,delimiter,Vb.net,String,Split,Delimiter,至于这个问题,这可能吗? 我正在做这件事。。 它应该只在那里是“UP”,但是因为我的分隔符是=它只读取=,所以它继续得到第二行,那就是DHCP 这是我的密码 Private Sub btnSettings_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSettings.Click Dim str As String = rtb.Text Dim star() As Str

至于这个问题,这可能吗? 我正在做这件事。。

它应该只在那里是“UP”,但是因为我的分隔符是=它只读取=,所以它继续得到第二行,那就是DHCP

这是我的密码

Private Sub btnSettings_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSettings.Click
    Dim str As String = rtb.Text
    Dim star() As String

        star = str.Split("="c)
        txtIP.Text = star(1)

End Sub
有没有一种方法可以在不同的分隔符之间获取字符串

例如=192.168.254.238:

我不知道您在这里想要什么,但试试这个:

 For Each line As String In RichTextBox1.Lines
     Dim star() As String = line.Split("=")
     If (star(0).ToUpper() = "IP") Then
         If (star(1).IndexOf(":") >= 0) Then
            txtIP.Text = star(1).Substring(0, star(1).IndexOf(":"))
         Else
            txtIP.Text = star(1)
         End If
     End If
 Next

首先在
vbcrlf
上拆分-获得行,然后在
=
上拆分每个
行,获得键/值。

在stackoverflow的某个c页面上找到它。 刚刚添加了另一个分隔符,虽然我不知道它是否适用于三个分隔符。干杯

Private Sub btnSettings_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSettings.Click
    Dim str As String = rtb.Text
    Dim star() As String
    ''Dim starr() As String
    star = str.Split("="c, ":"c)
    ''starr = str.Split(":"c)
    txtIP.Text = star(4)

End Sub

这确实起到了作用,但我碰巧发现了更简单的办法。”star=str.Split(“=”c“:”c)“txtIP.text=star(1)”它们似乎共享相同的结果,但我知道它们将进一步做不同的事情。你能告诉我区别吗?我应该正确使用什么?你的代码会更短更快。但如果其中一个上限值为=和:?例如
DHCP=:ON
。我知道这是极不可能的,但如果涉及人类,这并非不可能。第二,你有星号(4),如果它应该在星号(2)里呢?所以,这就是为什么最好遍历这些线,然后在几乎不可能出错的情况下得到所需的线。但同样,你的头发确实较短,如果它符合你的目的,那就继续吧;-)所以基本上,我需要更改代码中的toUpper部分和所有索引?嗯,那似乎更好。对于我的代码,我需要首先清除rtb,以便它将重叠和更新。谢谢你的解释。