描述: 1.正则匹配密码
- 6-18
- 密码:
- 初级: 纯数字和纯字母
- 中级: 数字和字母的组合 , 首位必须是字母
- 高级: 数字和字母和特殊符号的组合, 首位是字母
代码实现
var str = 'qwerty';
var reg = /^\d{6,18}$|^[a-zA-Z]{6,18}$/;
console.log(reg.test(str));
var str1 = 'qwrtee555st';
var reg = /(?!^[a-zA-Z]{6,18}$)^[a-zA-Z][0-9a-zA-Z]{5,17}$/;
console.log(reg.test(str1));
var str2 = '5wert55tw2#***'
var reg = /(?!^[!/@#$%^&*()_+{}]{6,18}$)(?!^\d{6,18}$)(?!^[a-zA-Z]{6,18}$)^[a-zA-Z][0-9a-zA-Z!/@#$%^&*()_+{}]{5,17}$/;
console.log(reg.test(str2));
2. 正则匹配邮箱
- 邮箱: qq sina github google 163 189
- qwer@qq sina189.com net edu
- 要匹配一整个字符串是否符合某个规则
- jiaxin_123 .在正则表示除换行以外的任意一个字符
- 从特殊符号转换成字符需要加\
代码实现
var str3 = '62455@qq.com';
var reg = /^\w{3,}@[0-9a-zA-Z]{2,}\.(com|cn|net|edu)$/;
console.log(reg.test(str3));
3.登录模拟实例(利用正则)
代码实现
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>注册页面的验证</title>
<style>
*{
margin: 0;
padding: 0;
}
#form{
margin: 20px 0 0 10px;
}
input{
outline:none;
text-indent: 5px;
}
i{
color:#FF514F;
}
</style>
</head>
<body>
<form id="form">
<p>
请输入账号:
<input type="text" name = "userId" id = "userId" autocomplete="off">
<span></span>
<i>*</i> 用户名以字母开头, 必须字母和数字的组合
</p>
<p>
请输入密码:
<input type="password" name = "password" id = "password" autocomplete="off">
<span></span>
<i>*</i> 必须字母和数字的组合 5--10
</p>
<p>
请输入手机号:
<input type="phonenumber" name = "phoneNumber" id = "phonenumber" autocomplete="off">
<span></span>
</p>
<p>
请输入邮箱:
<input type="email" name = "email" id = "email" autocomplete="off">
<span></span>
</p>
</form>
<script>
var form = document.getElementById('form');
var inps = document.querySelectorAll('input');
var spans= document.querySelectorAll('span');
console.log(form, inps , spans);
var reg = /(?!^[a-zA-Z]{6,18}$)^[a-zA-Z][0-9a-zA-Z]{5,17}$/;
var reg1 = /(?!^\d{5,10}$)(?!^[a-zA-Z]{5,10}$)^[0-9a-zA-Z]{5,10}$/;
var reg2 = /^1[3-9]\d{9}$/;
var reg3 = /^\w{3,}@[0-9a-zA-Z]{2,}\.(com|cn|net|edu)$/;
var arr = [reg, reg1, reg2, reg3];
for(var i = 0; i < arr.length; i++){
zc(i, arr[i]);
}
function zc(index, reg){
inps[index].onblur = function(){
if(!reg.test(this.value)){
spans[index].innerHTML = '错误';
spans[index].style.color = '#FB1010';
}else{
spans[index].innerHTML = '正确';
spans[index].style.color = '#3D850C';
}
}
}
</script>
</body>
</html>