javascript中正则表达式的行为
我是javascript新手,对正则表达式不太了解。请帮助我理解以下代码javascript中正则表达式的行为,javascript,regex,Javascript,Regex,我是javascript新手,对正则表达式不太了解。请帮助我理解以下代码 var r = new RegExp("^.*?https://www\\.facebook\\.com/servlet/SignOn.*$","i"); var content = "https://www.facebook.com/servlet/SignOn?msg=You+are+not+authorized+to+vie…r+level+of+authority.&cm_sp=TopNav-_-servl
var r = new RegExp("^.*?https://www\\.facebook\\.com/servlet/SignOn.*$","i");
var content = "https://www.facebook.com/servlet/SignOn?msg=You+are+not+authorized+to+vie…r+level+of+authority.&cm_sp=TopNav-_-servlet-_-MMM&goto=MembersMainMenu%3F";
console.log(content.search(r));// It gives me 0
但是当我把正则表达式改为
var r = new RegExp("^.*?https://www\\.facebook\\.com/servlet/SignOn?msg=.*$","i");
console.log(content.search(r));// It gives me -1 , why??
n?表示n是可选的,您需要n \?后面有一个星号。在正则表达式中