替换或删除第n次出现的\ n

时间:2013-04-20 14:21:41

标签: javascript jquery

这是我的字符串:

var ok = "\n\n33333333333\n\n\n";

如何用''替换'\ n'的第4次出现? 或者,如何删除第4次'\ n'?

2 个答案:

答案 0 :(得分:1)

  • 找到n-1次出现和其他角色。
  • 捕获子匹配。
  • 找到下一次出现。
  • 用捕获的子匹配替换整个匹配,并且 替换字符/字符串

    "AA33333333333AAA".replace(/((?:[^A]*A){3}[^A]*)A/,"$1k")

Ak的{​​{1}}和\n受托人,因此您可以更清楚地看到结果)

答案 1 :(得分:0)

至少在我看来,这是一个很好的解决方案:

var i = 0;
ok = ok.replace(/\n/g, function () {
  return ++i == 4 ? "" : "\n";
});

然而,就性能而言,它可能不会获胜。