为了账号安全,请及时绑定邮箱和手机立即绑定

多个前瞻并存的情况

当正则中出现多个前瞻同时存在时,应该怎么解析呢。

例如:/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])/这种。

我测试了一下,仿佛每次在前瞻查询时都是从最开始进行查询。所以上面的例子才可以不在意大小写的顺序都true。但是没有找到合适的解释。希望得到大家的帮助。

正在回答

2 回答

/\d(?=[a-z][A-Z]\d)/     其实多个前瞻可以合成一个前瞻的      

你那个有一个地方错了  你用那个网站看一下效果图会发现可以为0次 就是你不应该写  .*  的  

去掉  .*  之后好像还是有问题  可能是js不支持多个前瞻吧

0 回复 有任何疑惑可以回复我~

你能把对应的例子也写出来么?单单看这个很难说明问题


0 回复 有任何疑惑可以回复我~
#1

传说中的小白龙 提问者

/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])/.test('aB1'); ==> true /(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])/.test('Ba1'); ==> true /(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])/.test('1aB'); ==> true 我猜测就是不是顺序匹配的,假如是顺序匹配的话,那么在匹配了第一个小写a-z后面是必须跟A-Z的。。就应该是false。只是假设,没有找到相关说明。想找到相关解释。
2017-01-25 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

多个前瞻并存的情况

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信