使用正则表达式测试用户名、密码和手机号是否符合要求。 要求:密码--长度8~20位,英文大小写字母、数字、特殊符号(键盘最上的符号) 确认密码--和密码内容一样。 用户名--长度6~10位,英文大小写字母 手机号--以13、15、16、17、18、19开头的11位数字
时间: 2023-11-14 09:05:06 浏览: 149
正则表达式验证用户名、密码、手机号码、身份证(推荐)
你可以使用以下正则表达式来测试用户名、密码和手机号是否符合要求:
```javascript
// 验证密码:长度8~20位,英文大小写字母、数字、特殊符号
var passwordReg = /^(?=.*[A-Za-z])(?=.*\d)(?=.*[@$!%*#?&])[A-Za-z\d@$!%*#?&]{8,20}$/;
// 验证确认密码:和密码内容一样
var confirmPasswordReg = /^.*$/; // 这里只是为了演示,实际上应该在前端验证时通过 JavaScript 来判断是否和密码内容一样
// 验证用户名:长度6~10位,英文大小写字母
var usernameReg = /^[a-zA-Z]{6,10}$/;
// 验证手机号:以13、15、16、17、18、19开头的11位数字
var phoneReg = /^1[3|5|6|7|8|9]\d{9}$/;
```
使用时,你可以将需要验证的字符串和相应的正则表达式进行匹配,如果匹配成功,则说明符合要求,否则不符合要求。例如:
```javascript
var password = 'Abc12345!'; // 密码
var confirmPassword = 'Abc12345!'; // 确认密码
var username = 'MyUser'; // 用户名
var phone = '13812345678'; // 手机号
if (passwordReg.test(password)) {
console.log('密码格式正确');
} else {
console.log('密码格式错误');
}
if (confirmPasswordReg.test(confirmPassword) && confirmPassword === password) {
console.log('确认密码格式正确');
} else {
console.log('确认密码格式错误或与密码不一致');
}
if (usernameReg.test(username)) {
console.log('用户名格式正确');
} else {
console.log('用户名格式错误');
}
if (phoneReg.test(phone)) {
console.log('手机号格式正确');
} else {
console.log('手机号格式错误');
}
```
注意:这里只是演示,实际上应该在前端验证时通过 JavaScript 来判断确认密码是否和密码内容一样。
阅读全文