我看到了与此类似的问题,但没有一个试图达到完全相同的目的。我需要找到每个正则表达式模式的实例,但用不同的值替换每个实例。这是我的代码:

function replacingText(){
     var names = ["Ethan", "Kyle", "Chase", "Cole"];
     var sentance = 'This is [Cole] and [Chase].'
     var regex = /\[(.*?)\]/gm;
    for(i of names){
    sentance = sentance.replace(regex, i);
    }
    console.log(sentance);
}


此代码导致:

This is Ethan and Ethan.


但是我想要:

This is Ethan and Kyle.


确实,我只需要一种方法即可找到方括号[]中的每个项目,并用唯一值替换该项目,然后用新值重建字符串。我不喜欢任何方法。

最佳答案

尝试从正则表达式中删除g。它有助于

09-27 07:27