我有以下几点:如何删除索引之间字符的JavaScript字符串
var S="hi how are you";
var bindex = 2;
var eindex = 6;
我怎样可以删除所有选自S驻留bindex和eindex之间的字符?
因此S将是 “嗨,你”
我有以下几点:如何删除索引之间字符的JavaScript字符串
var S="hi how are you";
var bindex = 2;
var eindex = 6;
我怎样可以删除所有选自S驻留bindex和eindex之间的字符?
因此S将是 “嗨,你”
首先找到要替换的字符串的子字符串,然后将该字符串的第一次出现替换为空字符串。
S = S.replace(S.substring(bindex, eindex), "");
另一种方式是将字符串转换为数组,splice
掉不需要的部分,再转换为字符串。
var result = S.split('');
result.splice(bindex, eindex - bindex);
S = result.join('');
您可以:
删除空格重建串
var new_s = S.slice(1,bindex)+ S.slice(bindex,eindex).replace(/ \ s/g,'')+ S.slice(eindex)
对不起。我误读了你的问题,阅读'删除所有空格'而不是'删除所有字符' – Don 2011-03-07 09:08:10
随着String.slice
:
S = S.slice(0, bindex) + S.slice(eindex);
S.split(S.substring(bindex,eindex))加入(”“);
尝试
S = S.substring(0, bindex)+S.substring(eindex);
以文本bindex之前和之后eindex文字串连,如:
var S="hi how are you";
var bindex = 2; var eindex = 6;
S = S.substr(0, bindex) + S.substr(eindex);
小号现在是 “嗨,你”
这似乎是最安全的方法。应该是被接受的答案 – 2017-05-29 10:23:19
我喜欢这个,它避免了友好的火力。 – TechNyquist 2018-03-09 16:58:23
第一种方法可能会取代比预期更多的东西。 – alexandernst 2013-12-03 14:56:57
更进一步,如果字符串中存在unicode,则第二种方法会执行奇怪的操作。 (正如你使用''''''') – alexandernst 2013-12-03 14:59:14
拆分.replace()只会替换给定字符串的第一个匹配项。如果有的话,这种方法将删除不必要的东西 – 2017-05-29 10:22:54