如何将函数参数传递给正则表达式查询? 非常感谢。
function match(str, arg1, arg2){
var result = str.match(/(arg1 | arg2)/m);
log(result) //null
}
match('claire nick steve', 'nick','steve');
答案 0 :(得分:1)
http://www.regular-expressions.info/javascript.html
您正在使用文字,尝试使用新的RegExp(“您的字符串”)初始化对象;
答案 1 :(得分:1)
您需要将普通字符串传递给Regex
构造函数,如下所示:
var result = str.match(new Regex("(" + arg1 + "|" + arg2 + ")", "m");
如果在正则表达式中使用反斜杠,则需要将它们转义(\\
),因为它是正常的字符串文字。
答案 2 :(得分:0)
function match(str, arg1, arg2){
var re=new RegExp("(" + arg1 + "|" + arg2 +")","m");
var result = str.match(re);
log(result) //null
}
match('claire nick steve', 'nick','steve');