Izz*_*zzy 20 regex
我看到了这句话
^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])[A-Za-z0-9_#@%\*\-]{8,24}$
在正则表达式,这是密码检查机制.我读了很少关于正则表达式的课程,但我从未见过组合?=.解释.
?=.
我想知道它是如何工作的.在示例中,它搜索至少一个大写字母,一个小写字母和一个数字.我想这就像"如果".
The*_*Hat 19
(?=regex_here)是一个积极的前瞻.这是一个零宽度断言,这意味着它后跟容纳在正则表达式的位置相匹配(?=和).要从链接页面引用:
(?=regex_here)
(?=
)
lookaround实际匹配字符,但随后放弃匹配,只返回结果:匹配或不匹配.这就是他们被称为"断言"的原因.它们不消耗字符串中的字符,但仅断言是否可以匹配.Lookaround允许您创建在没有它们的情况下无法创建的正则表达式,或者在没有它们的情况下变得非常长.
在.没有先行的一部分,因为它的任何单个字符不是行终止符相匹配.
.
归档时间:
11 年,5 月 前
查看次数:
13321 次
最近记录: