Javascript 用值数组替换正则表达式匹配项
我有一个正则表达式来查找字符串中包含Javascript 用值数组替换正则表达式匹配项,javascript,Javascript,我有一个正则表达式来查找字符串中包含?的文本 const paragraph = 'This ??? is ??? and ???. Have you seen the ????'; const regex = /(\?\?\?)/g; const found = paragraph.match(regex); console.log(found); 是否有方法按顺序用数组中的值替换每个匹配项 例如,使用['cat','cool','happy','dog']数组,我希望结果是'这只猫既酷又
?
的文本
const paragraph = 'This ??? is ??? and ???. Have you seen the ????';
const regex = /(\?\?\?)/g;
const found = paragraph.match(regex);
console.log(found);
是否有方法按顺序用数组中的值替换每个匹配项
例如,使用['cat','cool','happy','dog']
数组,我希望结果是'这只猫既酷又快乐。你看见那条狗了吗?“
我看到了
String.prototype.replace()
,但这将替换所有值。使用替换函数,从替换字符串数组中shift
s(shift
删除并返回第0个索引处的项):
const段落='这个???是和你有没有看过电影;
常量正则表达式=/(\?\?)/g;
const replacements=['cat','cool','happy','dog'];
const found=段落.replace(regex,()=>replacements.shift());
console.log(找到)代码>