.net 在特定行之后添加行(如果存在)

.net 在特定行之后添加行(如果存在),.net,.net,现在我有这个 txtRTB.Text = txtRTB.Text & vbNewLine & "Text2" 如果这一行存在于txtRTB.Text中,有没有办法在“Text1”之前添加这一行 例如,我们现在假设txtRTB.Text说: 文本1 我想让我的按钮或任何东西在它前面加上“Text2”,就像这样: Text2 文本1 否则,只需将其添加到下一行,如下所示: 随机文本 文本2 [编辑] 假设我的富文本框中有这样的内容: 苹果 香蕉 梨 如果我搜索不带“s”的“香

现在我有这个

 txtRTB.Text = txtRTB.Text & vbNewLine & "Text2"
如果这一行存在于txtRTB.Text中,有没有办法在“Text1”之前添加这一行

例如,我们现在假设txtRTB.Text说:
文本1

我想让我的按钮或任何东西在它前面加上“Text2”,就像这样:
Text2
文本1

否则,只需将其添加到下一行,如下所示:

随机文本
文本2








[编辑] 假设我的富文本框中有这样的内容:
苹果
香蕉


如果我搜索不带“s”的“香蕉”并找到“香蕉”,我想在它前面加上一行“草莓”:
苹果
草莓
香蕉

否则,如果找不到“香蕉”(如果“香蕉”不在列表中,那么我只想将其添加到文本框的顶部,如下所示:
草莓
苹果

Pears

您是否正在尝试查找或查看字符串是否包含在另一个字符串中

如果是,请尝试以下操作:-

String valueTxtRTB = txtRTB.Text

     if (valueTxtRTB.Contains("Text1"))
        {  
            // Do Something // 
        }

您是否正在尝试查找或查看字符串是否包含在另一个字符串中

如果是,请尝试以下操作:-

String valueTxtRTB = txtRTB.Text

     if (valueTxtRTB.Contains("Text1"))
        {  
            // Do Something // 
        }

您必须获取搜索文本的行号才能插入:

Dim index As Integer=txtRTB.Find(“Text1”)
如果索引>-1,则
index=txtRTB.GetLineFromCharIndex(索引)
index=txtRTB.GetFirstCharIndexFromLine(索引)
txtRTB.Select(索引,0)
txtRTB.SelectedText=“Text2”和vbNewLine
其他的
txtRTB.AppendText(“Text2”和vbNewLine)
如果结束
此外,在添加文本时,请使用AppendText:

'txtRTB.Text=txtRTB.Text&vbNewLine&“Text2”
txtRTB.AppendText(vbNewLine和“Text2”)

您必须获得搜索文本的行号才能插入:

Dim index As Integer=txtRTB.Find(“Text1”)
如果索引>-1,则
index=txtRTB.GetLineFromCharIndex(索引)
index=txtRTB.GetFirstCharIndexFromLine(索引)
txtRTB.Select(索引,0)
txtRTB.SelectedText=“Text2”和vbNewLine
其他的
txtRTB.AppendText(“Text2”和vbNewLine)
如果结束
此外,在添加文本时,请使用AppendText:

'txtRTB.Text=txtRTB.Text&vbNewLine&“Text2”
txtRTB.AppendText(vbNewLine和“Text2”)


给出一个你想做的具体例子。完成!(10char.)好的,这个例子真的很有帮助。但是,规范仍然不完整。搜索文本是否需要单独在一行上?如果不需要,搜索文本是否在该行的开头?另外,如果有多行包含该文本,是否要在包含该文本的第一行之前插入该文本?将只有一行n输入文本,搜索文本不必单独在一行中。该行可以包含文本。请给出一个具体的示例,说明您要执行的操作。完成!(10char)好的,这个例子真的很有帮助。但是,规范仍然不完整。搜索文本是否需要单独在一行上?如果不需要,搜索文本是否在该行的开头?另外,如果有多行包含该文本,是否要在包含该文本的第一行之前插入该文本?将只有一行对文本进行排序,搜索文本不必单独在一行上。这行可以包含文本。如果他想在那个位置做某事,那么可能
IndexOf
。如果他想在那个位置做某事,那么可能
IndexOf
。如果找不到Text1呢?对我来说,那个代码似乎有点太复杂了。…为什么不使用
string.IndexOf
string.Insert
。我没有VB.NET的经验…有没有更简单的方法来执行上面的代码@Phil1970?@Phil1970,因为我认为OP不是试图在搜索文本前面插入文本,而是在搜索文本上面的行插入文本。这需要y你需要处理行号等。你完全正确,@LarsTech!你的代码工作得很好!如果找不到Text1呢?对我来说,那代码似乎有点太复杂了…为什么不使用
string.IndexOf
string.Insert
。我没有VB.NET的经验…有没有更简单的方法来做above code@Phil1970?@Phil1970,因为我认为OP并不是试图在搜索文本前插入文本,而是在搜索文本上方的行中插入文本。这需要您处理行号等。您的操作完全正确,@LarsTech!而且您的代码工作得非常出色!