如何在特定字符处将文本插入字符串

How to insert text into a string at a point of a specific character(s)

我找遍了整个互联网,唯一能找到的就是IndexOf。问题是我需要一种方法将插入内容放在这些字符中的特定一个。

我目前正在使用这个

    RichTextBox1.Text = RichTextBox1.Text.Insert(RichTextBox1.Text.Substring(0,RichTextBox1.Text.Split("^")(CurrentSlide).Length), "^")

想一想这当然是完全不正确的,因为索引的长度并不是真正的文本到索引的长度。

我认为你的想法是正确的。看起来你有一个“^”分隔的字符串,你想在某个时候插入一个空字符串。由于集合比字符串更容易使用,因此您的 Split 是一个好的开始。

Dim parts = RichTextBox1.Text.Split("^")

让我们把它做成一个列表,这样我们就可以插入其中:

Dim parts = RichTextBox1.Text.Split("^").ToList()

现在,只需在需要新元素的地方插入一个空字符串即可:

Dim parts = RichTextBox1.Text.Split("^").ToList()
parts.Insert(CurrentSlide, "")

然后将它们组合回去以便在您的文本框中进行编辑:

Dim parts = RichTextBox1.Text.Split("^").ToList()
parts.Insert(CurrentSlide, "")
RichTextBox1.Text = String.Join("^", parts)