JavaScript正则表达式的一个问题

niuniu20008 2009-02-06 03:20:27
我js的正则不是很好,现在在做一个小项目,项目中我要用js验证密码,麻烦高手用js写一个正则表达式
要求是:密码只可以由大小写英文字母、数字组成,长度是8-20位,但是这个密码又不能全是大小写英文字母或者数字。
...全文
89 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jokerdx 2009-02-08
  • 打赏
  • 举报
回复
学习了
niuniu20008 2009-02-08
  • 打赏
  • 举报
回复
学习了
yoyo82 2009-02-07
  • 打赏
  • 举报
回复
人家的是对的,那里有匹配下划线的???
niuniu20008 2009-02-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 kurokawa 的回复:]
JScript codefunction checkPassword(pwd){
var reg1 = /^[A-Za-z0-9]{8,20}$/;
var reg2 = /^[A-Z]{8,20}$/;
var reg3 = /^[a-z]{8,20}$/;
var reg4 = /^[0-9]{8,20}$/;
if(!reg1.test(pwd)){
// 长度不够或字符不正确
return false;
}
if(reg2.test(pwd) || reg3.test(pwd) || reg4.test(pwd)){
// 只用了一种字符
return false;
}
return true;
}
[/Quote]
这样不大对吧,如果密码中有下划线仍会return true 要求中是不能有下划线的。
kurokawa 2009-02-06
  • 打赏
  • 举报
回复
function checkPassword(pwd){
var reg1 = /^[A-Za-z0-9]{8,20}$/;
var reg2 = /^[A-Z]{8,20}$/;
var reg3 = /^[a-z]{8,20}$/;
var reg4 = /^[0-9]{8,20}$/;
if(!reg1.test(pwd)){
// 长度不够或字符不正确
return false;
}
if(reg2.test(pwd) || reg3.test(pwd) || reg4.test(pwd)){
// 只用了一种字符
return false;
}
return true;
}

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧