The*_*ebs 2 php regex phpunit laravel laravel-7
因此,在任何人关闭此功能之前,我将在这里参考答案并提出问题。
所以我的问题是我想要对 laravel 进行强密码验证,包括 10 个字符、数字、大写小写等等。
我找到了:https : //stackoverflow.com/a/31549892/1270259
问题是,这个正则表达式看起来不对:
/^.*(?=.{3,})(?=.*[a-zA-Z])(?=.*[0-9])(?=.*[\d\X])(?=.*[!$#%]).*$/
Run Code Online (Sandbox Code Playgroud)
由于我不擅长正则表达式,我想我会问如何修复它以使其验证:
我觉得他们的答案很接近。当这是针对 github 操作运行时,返回的错误是preg_match(): Compilation failed: escape sequence is invalid in character class at offset 46.
我也有任何想法如何让 Laravel 7 工作以匹配上述约束?
使用对比原理:
^
(?=[^a-z]*[a-z]) # ensure one lower case letter
(?=[^A-Z]*[A-Z]) # ensure one upper case letter
(?=\D*\d) # ensure a digit
(?=[^!@?]*[!@?]) # special chars
.{10,} # at least 10 characters long
$
Run Code Online (Sandbox Code Playgroud)
当然,您可以扩展特殊字符部分。在 regex101.com 上
查看演示。
| 归档时间: |
|
| 查看次数: |
1378 次 |
| 最近记录: |