我很接近得到这个,但它是不正确的。
我想做的就是从字符串中删除字符 r
。
问题是,字符串中有多个 r
实例。
但是,它始终是索引 4 处的字符(因此是第 5 个字符)。
示例字符串: crt/r2002_2
我想要什么: crt/2002_2
此替换功能同时删除 r
mystring.replace(/r/g, '')
出品: ct/2002_2
我试过这个功能:
String.prototype.replaceAt = function (index, char) {
return this.substr(0, index) + char + this.substr(index + char.length);
}
mystring.replaceAt(4, '')
只有当我用另一个字符替换它时它才有效。它不会简单地删除它。
有什么想法吗?
原文由 user1293504 发布,翻译遵循 CC BY-SA 4.0 许可协议
将使用 --- 将
/r
替换为/
String.prototype.replace
。或者,您可以使用带有全局标志的正则表达式(如下面的 Erik Reppen & Sagar Gala 所建议的那样)将所有出现的地方替换为
编辑: 因为每个人都在这里玩得很开心,而且 user1293504 似乎不会很快回来回答澄清问题,这里有一个从字符串中删除第 N 个字符的方法:
由于 user1293504 使用正常计数而不是零索引计数,我们必须从索引中删除 1,如果您希望使用它来复制如何
charAt
工作不要从索引中减去 1第三行并使用tmp.splice(i, 1)
代替。