编程 正则数字、字母、字符密码组合校验

2024-11-19 02:29:35 +0800 CST views 4164

今天在写登录密码的时候,突然想让用户输入密码更加严谨点。于是打算在登录的时候做个检查用户密码是否安全。很多人老是用123456太不安全了。

必须包含 数字,字母,符号 3项组合的 正则表达式

^(?:(?=.[0-9].)(?=.[A-Za-z].)(?=.*[,.#%'+*-:;^_].*))[,\.#%'\+\*\-:;^_0-9A-Za-z]{8,10}$

不为纯数字或字母的正在表达式 用于密码验证

^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,16}$

密码为8~20位数字,英文,符号至少两种组合的字符

^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?![,.#%'+*-:;^_]+$)[,\.#%'\+\*\-:;^_0-9A-Za-z]{8,20}$

实际项目案例:

protected function checkpassword($value)
    {
        if (!preg_match("/^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?![,\.#%'\+\*\-:;^_`]+$)[,\.#%'\+\*\-:;^_`0-9A-Za-z]{6,30}$/i",$value)){
            return "密码不能为纯数字或字母";
        }
        return true;
    }

正则.png

复制全文 生成海报 安全性 编程 正则表达式 用户体验

推荐文章

php常用的正则表达式
2024-11-19 03:48:35 +0800 CST
WebSQL数据库:HTML5的非标准伴侣
2024-11-18 22:44:20 +0800 CST
在Rust项目中使用SQLite数据库
2024-11-19 08:48:00 +0800 CST
禁止调试前端页面代码
2024-11-19 02:17:33 +0800 CST
Golang 中你应该知道的 Range 知识
2024-11-19 04:01:21 +0800 CST
前端项目中图片的使用规范
2024-11-19 09:30:04 +0800 CST
Rust开发笔记 | Rust的交互式Shell
2024-11-18 19:55:44 +0800 CST
全栈利器 H3 框架来了!
2025-07-07 17:48:01 +0800 CST
Linux查看系统配置常用命令
2024-11-17 18:20:42 +0800 CST
imap_open绕过exec禁用的脚本
2024-11-17 05:01:58 +0800 CST
程序员茄子在线接单