我正在尝试从对象属性动态构造一个简单的正则表达式。
var type = 'bold';
var styles = {
"bold italic" : "***",
"bold" : "**",
"italic" : "*"
};
var re = new RegExp(styles[type], 'g');
但是,我返回了一个无效的量词错误。
如果我将变量放在引号中,如下所示:
var re = new RegExp('"' + styles[type] + '"', "g");
它工作正常时type == 'italic'
但不是'bold'
谁能解释为什么会这样,并提供修复?