初学js正则表达式之密码强度验证

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>passwordCheck</title>
<script type="text/javascript" src="Js/jquery1.6.1.js"></script>
<script type="text/javascript">
	$(function() {
		$('#pwd').keyup(function() {
			var val = $(this).val();
			isDigit(val);
		});
		
		function isDigit(s) {
			var pattern_d = /^\d+$/;			//全数字
			var pattern_s = /^[A-Za-z]+$/		//全字符
			var pattern_w = /^\w+$/;			//数字或者字符
			var pattern_W = /^\W+$/				//全非数字也非字符
			var pattern_r = /^\w+\W+[\w\W]*\w+$/	//以字母或者数字开头结尾的字符串
			var html = '';
			var x = 0;
			var y = 0;
			
			$('#user').html(s);
			if(pattern_W.exec(s)) {
				html += '非数字也非字符<br />';
				x = 0;
				y = 0;
			}
			if(pattern_w.exec(s)) {
				html += '数字或者字符<br />';
				y = 1;
			}
			if(pattern_d.exec(s)) {
				html += '全数字<br />';
				x = 1;
				y = 0;
			}
			if(pattern_s.exec(s)) {
				html += '全字符<br />';
				x = 2;
				y = 0;
			}
			if(pattern_r.exec(s)) {
				html += '以字母或者数字开头结尾的字符串<br />';
				x = 3;
				y = 2;
			}
			if( y === 0 && x === 0) {
				html += '密码格式错误<br />';
			}
			if( x > 0 && y === 0) {
				html += '安全级别《低》<br />';
			}
			if( x === 0 && y === 1) {
				html += '安全级别《中》<br />';
			}
			if( y === 2) {
				html += '安全级别《高》<br />';
			}
			html += x + '<br />' + y;
			$('#password').html(html);
		};
	});
</script>
</head>

<body>
<form action="#" method="#">
	用户名:<input type="text" name="" /><span id="user"></span><br />
    密码:<input type="password" name="" id="pwd" /><span id="password"></span><br />
</form>
</body>
</html>

忘大家有好的思路,留言共享。

当密码为纯数字,或者纯字母的时候,安全等级为最低。

当密码为数字与字母组合,安全等级为中。

当密码中除数字和字母外,还有特殊符号,则安全等级为高。


其中,密码为特殊符号时,未对空格做排除。

当存在特殊符号时,特殊符号不可作为开头或者结尾。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值