如何解决TypeScript/JavaScript 中的用户名和密码验证
我正在尝试编写一个简单的函数来验证用户将输入的用户名和密码。
用户名具有以下验证规则:
- 电子邮件必须来自大学 (.edu) 或 .gov 或 .org
- 密码具有以下验证规则:
- 至少 10 个字符(最多 30 个字符)
- 5 个或更多唯一字符
- 至少包含以下 3 个字符:大写、小写、数字或特殊字符。允许的特殊字符是 ~ ! @ # $ % ^ * - _ = + [ { ] } / ; :,。 ?
- 密码不能包含电子邮件或您姓名的任何部分
- 不能包含 4 个或更多数字的数字序列
- 不能包含重复 4 次或更多次的字符
到目前为止,我已经:
var email;
var password;
var firstname;
var lastname;
validate (email,password,firstname,lastname)
{
//email validation
var substring1 = ".edu";
var substring2 = ".gov";
var substring3 = ".org";
if (console.log(email.includes(substring1)) ||
console.log(email.includes(substring2)) || console.log(email.includes(substring3)))
{
if (password.length < 10 || password.length > 30)
{
return "password length must be at least 10 characters and no more than 30.";
}
else if (password.contains(firstname))
{
return "password may not contain user's first name";
}
else if(password.contains(lastname))
{
return "password may not contain user's last name";
}
else if(password.contains(email))
{
return "password may not contain user's email";
}
else if(password.contains((.)\1{4,}))
{
}
}
else
{
return "username is invalid."
}
}
我不知道如何处理这些规则:
- 不能包含 4 个或更多数字的数字序列
- 不能包含重复 4 次或更多次的字符
- 5 个或更多唯一字符
-
- 至少包含以下 3 个字符:大写、小写、数字或特殊字符。允许的特殊字符是 ~ ! @ # $ % ^ * - _ = + [ { ] } / ; :,。 ?
如果您有任何有关如何开始的见解或提示,我将不胜感激?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。