我是一名有用的助手,可以为您翻译文本。下面是需要翻译的内容:
我如何在JavaScript中处理多个连续字符串替换? 编辑: https://stackoverflow.com/users/82548/david-thomas建议我的原始问题是XY问题-有解决另一个问题的解决方案,而不是实际问题。 那么这就是实际问题。
从以下内容开始:
我有一个长字符串'str'和一个三元组列表,形式为[start,end,replace_str]。 我需要遍历三元组列表,并将在起始索引和结束索引之间的'str'内容替换为replace_str。 replace_str字符串的长度可以变化。 问题在于,在第一个三元组替换后,“str”的内容和长度会发生更改,并且下一个三元组的起始和结束索引的替换位置不再有效,替换发生在错误的位置。
例如:
str = 'I want to go to India.'
三元组列表如下:
[3,7,'<span id="7">want</span>']
[11,13,'<span id="49">go</span>']
[1,2,'<span id="1003">I</span>']
替换第一个三元组后,'str' 的样子如下:
'I <span id="7">want</span> to go to India'.
现在进行第二次三元组替换,起始位置为11,结束位置为13,字符串将会变成:
'I <span id<span id="49">go<span>>7">want</span> to go to India.'
我希望你能将其看起来像这样
'I <span id="7">want</span> to <span id="49">go<span> to India.'
我如何在JavaScript中处理多个连续字符串替换? 编辑: https://stackoverflow.com/users/82548/david-thomas建议我的原始问题是XY问题-有解决另一个问题的解决方案,而不是实际问题。 那么这就是实际问题。
从以下内容开始:
str = 'I want to go to India.'
三元组列表如下:
[3,7,'<span id="7">want</span>']
[11,13,'<span id="49">go</span>']
[1,2,'<span id="1003">I</span>']
我想用 replace_str 替换 start 和 end 之间 str 的内容,这样在替换完所有三元组后,我的结果字符串将会像这样:
'<span id="1003">I<span> <span id="7">want</span> to <span id="49">go<span> to India.'
id
的元素包装某些单词的问题?如果提供的单词('want'、'go'和'I')的所有实例(如果它们出现了多次)都应该被替换,还是只有在特定(初始)索引处的那些实例? - David Thomasid
代表什么?每个包含"I"的句子都会用<span id="1003">
括起来吗?所有代词都会用<span id="1003">
括起来吗?还是只有一个字母的所有单词都会被括起来?你只有一个“长字符串'str'”来处理,还是你有许多相似的字符串?能给出例子吗?您在每个字符串中使用的id
是否相同?也许有一种更通用的解决方案可以有效地处理这个问题。 - James Newton