RegExp字符串match不'不起作用

RegExp string.match doesn't work

本文关键字:不起作用 字符串 match RegExp      更新时间:2023-09-26

这是我的代码,但由于某种原因它不起作用,有人知道吗?

var val="My1name"
var exp = new RegExp("((?=.*'d)(?=.*[a-z])(?=.*[A-Z]).{6,20})"); 
if(!val.match(exp)){      
   alert("No match")
} else {
   alert("Match")
}

从字符串构建时需要转义字符。。。

var exp = new RegExp("((?=.*''d)(?=.*[a-z])(?=.*[A-Z]).{6,20})"); 
 //-------------------------^

你想这么做吗?

var val = "My1name";
var exp = /((?=.*'d)(?=.*[a-z])(?=.*[A-Z]).{6,20})/; 
if(!val.match(exp)){      
   alert("No match");
} else {
   alert("Match");
}