通过forEach将变量插入正则表达式[重复]
Posted
技术标签:
【中文标题】通过forEach将变量插入正则表达式[重复]【英文标题】:insert variable via forEach into regex expression [duplicate] 【发布时间】:2018-10-02 18:25:42 【问题描述】:如下所示,我试图计算字符串 J 中的一个字符在字符串 S 中出现的次数。唯一的问题是我不能将 forEach 循环中的参数 o 放入正则表达式中,如图所示在 console.log 中。
var numJewelsInStones = function(J, S)
let jArr = J.split('');
let sArr = S.split('');
jArr.forEach(o=>
console.log(S.replace(/[^o]/g,"").length);
)
;
numJewelsInStones("aA", "aAAbbbb");
【问题讨论】:
【参考方案1】:您可以使用传递字符串参数的构造函数创建正则表达式:
new RegExp('[^' + o + ']', 'g')
您的替换逻辑可能如下所示:
S.replace(new RegExp('[^' + o + ']', 'g'), '')
【讨论】:
以上是关于通过forEach将变量插入正则表达式[重复]的主要内容,如果未能解决你的问题,请参考以下文章