前n个匹配项的正则表达式

时间:2018-10-08 14:03:05

标签: javascript regex

我有一个像下面这样的字符串

const str = '_ _  _ _  _ _ _ _'

如何替换前两个_

例如,我需要替换两个_

const newString = '     _ _  _ _ _ _'?

我正在尝试使用string.replace和Regexp。

如何使用正则表达式查找前n个特定符号? 例如,我需要在下面的字符串中找到3

^[_]{3} 

但它与_之类的行中仅匹配3个___

1 个答案:

答案 0 :(得分:0)

这不是最优雅的解决方案,但是您可以简单地运行两次非全局替换。或在所需次数内运行for循环。

var str = '_ _  _ _  _ _ _ _';
str = str.replace('_',' ').replace('_',' ');
console.log(str);