如何在字符串的两个相同字符之间获取字符串 - 在vb.net中

时间:2014-03-19 10:33:26

标签: vb.net string

我有一个字符串 ~AS DF~GHJ~K LE~RTYUVD~FE~GRF E~SRRRTR EDC~XCE

我想要“〜”之间的字符串 像

AS DF

GHJ

K LE

RTYUVD

FE

GRF E

SRRRTR EDC

2 个答案:

答案 0 :(得分:2)

您可以尝试使用Split()函数将输入字符串分割为代字号(~)。然后,由于您只对之间的子串感兴趣,请跳过拆分结果中的第一个和最后一个项:

Dim splitResult = "~AS DF~GHJ~K LE~RTYUVD~FE~GRF E~SRRRTR EDC~XCE".Split("~")
For Each r As String In splitResult.Skip(1).Take(splitResult.Length - 2)
    Console.WriteLine(r)
Next

结果:

enter image description here

我们跳过第一项,因为它只有右侧的波浪号

first item~.....

我们跳过最后一项,因为它只有左侧的波浪号

.....~last item

答案 1 :(得分:0)

试试这个

方法1:

Dim s As String = "~AS DF~GHJ~K LE~RTYUVD~FE~GRF E~SRRRTR EDC~XCE"

' Split the string on the backslash character
Dim parts As String() = s.Split(New Char() {"~"c})

' Loop through result strings with For Each
Dim part As String
For Each part In parts
    Console.WriteLine(part)
Next

方法2:

Dim s As String = "~AS DF~GHJ~K LE~RTYUVD~FE~GRF E~SRRRTR EDC~XCE"
Dim words As String() = s.Split(new String() { "~" }, 
                                        StringSplitOptions.None)