常规表达方式JS

问题描述 投票:0回答:1

谁能告诉我,为什么这里不加d/d,代码就不能用?我需要在pwRegex中使用lookaheads来匹配长度大于5个字符,不以数字开头,并且有两个连续数字的密码。

let sampleWord = "abc123";
var pwRegex =  /^\D(?=\w{5})(?=\w*\d{2})/;
let result = pwRegex.test(sampleWord);    //true 

谢谢!谁能告诉我,为什么这段代码不符合我的要求?

javascript regex regex-lookarounds
1个回答
1
投票

在regex中。\d 匹配任何数字字符,并且 \D 匹配的任何字符都是 一个数字字符。^ 表示字符串的开始,所以 ^\D 意味着起始字符不是数字。

...不以数字开头,...。

...不要以数字开头,... \D 是为它不以数字开头。

© www.soinside.com 2019 - 2024. All rights reserved.