c# - 在变化的位置插入琴弦

标签 c# string token

我跌跌撞撞,需要一些帮助。

我需要一种基于索引将子字符串插入更长的字符串的方法。
不幸的是,随后的插入使原始索引过时了(随着字符串变长),我想知道是否有解决方法?

This is a hyperlink. And so is this.
          ^-------^            ^--^
         10      19           31  35


第一次插入后,第二个索引将更改:

This is a <a href="#">hyperlink. And so is this.
                                           ^--^
                              31          43  47


有人知道实现我想要的方法/库/算法吗?

这样我就可以神奇地插入,但仍然使用原始索引?

最佳答案

从最高索引到最低索引替换。只有替换后的索引会更改,因此,如果从最高索引开始,则可以保留相同的索引,并且所有内容都将被正确替换,无需进行任何调整。如果只需要对字符串进行一次传递,这是一个非常简单的解决方案:)

This is a hyperlink. And so is this.
          ^-------^            ^--^
         10      19           31  35

This is a hyperlink. And so is My new hyperlink this.
          ^-------^            ^-------------------^
         10      19           31

This is a another hyperlink. And so is My new hyperlink this.
          ^---------------^            ^-------------------^
         10

关于c# - 在变化的位置插入琴弦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34811221/

相关文章:

c# - SQL 语法错误 C#

c# - 微软语音识别编程。我怎么能在每次收到一个词时关闭语音识别引擎

C# 检查对象是否为空

java - 将字符串中的字符替换为数字

c++ - 如何在c中重新初始化一个char *变量

backbone.js - 获取请求的 Backbone js设置 header

c# - 从 DatePicker DatePicked 事件设置按钮内容

java - 具有多个空格的正则表达式

c - 用C中的任何空格分隔字符串

Java:使用 Scanner 对象在线计算重复标记