【发布时间】:2016-08-24 13:47:42
【问题描述】:
我对 substring/substr/slice 有一个非常简单的问题。我的代码很复杂所以这里就不贴了,这里是问题的简化版:
例如如何将 text.substring(5, 10) 更改为 "Something"?
text = "HelloHello";
如果我尝试
text = text.replace(text.substring(5,10), "Something");
结果将是“SomethingHello”,因为 text.substring(0, 5) 也是“Hello”,但我想得到“HelloSomething”
slice() 和 substr() 也不行,你能给我一个解决方案吗?
【问题讨论】:
-
text = text.substring(0,5) + "Something";有什么问题? -
好吧,我的代码很复杂,但真正的问题是:如果字符串之前已经出现在文本中,如何替换字符 text[a] 和 text[b] 之间的字符串?
-
您的意思是要将两个索引值之间的所有文本替换为其他文本,还是要在两个索引值指定的子字符串中进行搜索并仅在该子字符串中进行替换?我可以想到两种方法来做到这一点,搜索字符串是否出现在指定范围之外并不重要。
-
我想替换两个索引之间的所有文本。
-
好的。好吧,使用 replace() 方法可以实现 ,但只执行
text = text.substring(0, start) + "Something" + text.substring(end);会更简单。
标签: javascript replace substring slice substr