JavaScript替换regex的每一个出现,但最后一个

JavaScript replace regex every occurence but the last?

本文关键字:最后一个 每一个 替换 regex JavaScript      更新时间:2023-09-26

是否有一种方法可以在每次出现时使用replace的正则表达式,除了最后一次?

例如,我想让"abc"变成"a|b|c"

I can do:

"abc".replace(/./g, "$&|");

但结果是a|b|c|。是否有一种方法可以替换除最后一次之外的所有事件?或者做n出现,而不是全局地使用g ?还是我想错了?

使用否定的前瞻:

"abc".replace(/.(?!$)/g, "$&|"); // => "a|b|c"

甚至:

"abc".split("").join("|"); // => "a|b|c"

您可以不使用regex:

var s = "abc";
var r = s.split('').join('|');
//=>"a|b|c"
相关文章: