您的位置:首页 > 编程语言 > PHP开发

正则匹配密码只能是数字和字母组合字符串功能【php与js实现】

2017-01-10 10:01 1156 查看

密码要求:

1. 不能全部是数字
2. 不能全部是字母
3. 必须是数字和字母组合
4. 不包含特殊字符
5. 密码长度6-30位的字符串

/**
* @desc get_pwd_strength()im:根据密码字符串判断密码结构
* @param (string)$mobile
* return 返回:$msg
*/
function get_pwd_strength($pwd){
if (strlen($pwd)>30 || strlen($pwd)<6)
{
return "密码必须为6-30位的字符串";
}
if(preg_match("/^\d*$/",$pwd))
{
return "密码必须包含字母,强度:弱";//全数字
}
if(preg_match("/^[a-z]*$/i",$pwd))
{
return "密码必须包含数字,强度:中";//全字母
}
if(!preg_match("/^[a-z\d]*$/i",$pwd))
{
return "密码只能包含数字和字母,强度:强";//有数字有字母 ";
}
}

js 正则匹配

/**
* 检测密码强度,必须由数字与字母组合,至少6位的字符串。
*/
$.checkPwd = function(v){
v=$.trim(v);
if(v.length<6||v.length>30){
return "密码长度为6-30位";
}
if(/^\d+$/.test(v))
{
return "全数字";
}
if(/^[a-z]+$/i.test(v))
{
return "全字母";
}
if(!/^[A-Za-z0-9]+$/.test(v))
{
return "只能含有数字有字母";
}
return "正确";
};

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript

正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg

希望本文所述对大家正则表达式学习有所帮助。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息