拆分 space vb.net

Split by space vb.net

如何通过space拆分拆分成2个不同的字符串?

我有一个名称为 link 的字符串。
我需要将它分成 2 个不同的字符串。

[LVL 8] Logan_Aasd http://www.google.com/1  
[LVL 8] Jack_Jackosn http://www.google.com/2  
[LVL 8] Mask_Off http://www.google.com/3  
[LVL 8] Dream_Alive http://www.google.com/4  

我需要将它们以这种方式拆分到不同的 richtextbox:

[LVL 8] Logan_Aasd   
[LVL 8] Jack_Jackosn   
[LVL 8] Mask_Off   
[LVL 8] Dream_Alive  
http://www.google.com/1   
http://www.google.com/2   
http://www.google.com/3   
http://www.google.com/4  

我尝试将其拆分为 space,然后使用 For Each。代码不对,但我认为它接近我需要的。

Dim text As String = RichTextBox2.Text
Dim x() As String
x = text.Split(" "c)
For Each s As String In x
    RichTextBox3.Text = s
Next

你可以这样使用:

Dim modifiedLines = New List(Of String)()
For index As Integer = 0 To lines.Length - 1
    Dim url = lines(index).Substring(lines(index).LastIndexOf(" "c) + 1)
    modifiedLines.Insert(index, lines(index).Replace(url, String.Empty))
    modifiedLines.Add(url)
Next

假设您已将内容拆分为名为 lines 的字符串数组。

基本上这是做什么的:

  1. 创建一个列表来存储新行
  2. 遍历每个现有行
  3. 通过拆分当前迭代行上 space 的最后一个实例来获取 URL,然后获取从 space 到结尾
  4. 的子字符串
  5. 插入现有行,将 URL 替换为当前索引处的空字符串
  6. 将URL添加到集合的末尾

有点担心,如果你的 URL 在字符串中出现两次,那么当它调用 Insert 命令时它会被删除,但根据你的例子我不我认为这不太可能发生。

实例:https://dotnetfiddle.net/ejlj9y