js判断用户名是否合法 具体要求:写程序实现对用户名进行格式验证; 要求用户名长度在3~10范围内,不能出现敏感词admin的任何大小写形式。
时间: 2024-03-23 14:39:39 浏览: 146
可以使用正则表达式来判断用户名是否合法,具体实现如下:
```javascript
function isValidUserName(username) {
// 长度在3~10范围内
if (username.length < 3 || username.length > 10) {
return false;
}
// 不能出现敏感词admin的任何大小写形式
const regex = /admin/i;
if (regex.test(username)) {
return false;
}
return true;
}
```
使用示例:
```javascript
console.log(isValidUserName('admin')); // false
console.log(isValidUserName('Admin123')); // false
console.log(isValidUserName('test')); // true
console.log(isValidUserName('testuser')); // true
console.log(isValidUserName('testuser123456')); // false
```
在上面的实现中,首先判断用户名长度是否在3~10范围内,如果不是则返回false。然后使用正则表达式判断用户名中是否包含敏感词admin的任何大小写形式,如果是则返回false,否则返回true。
相关问题
JavaScript在开发用户注册和登录功能时,经常需要对用户输入的用户名进行格式验证。 本案例要求用户名长度在3~10范围内,不允许出现敏感词admin的任何大小写形式。 请判断用户输入的用户名是否合法
在JavaScript中,你可以通过正则表达式(Regular Expression)来进行用户名的格式验证。首先,我们需要创建一个函数,接收用户输入的用户名作为参数。这个函数会检查以下几个条件:
1. 长度范围:用户名长度应在3到10个字符之间。
2. 禁止包含敏感词"admin"及其变形(不区分大小写)。
下面是一个简单的示例实现:
```javascript
function isValidUsername(username) {
// 正则表达式匹配3到10个字符且不包含admin或其变形
const regex = /^(?!.*[A-Za-z]*(admin[A-Za-z]*)+$)[A-Za-z0-9]{3,10}$/;
// 检查长度和敏感词
return (
username.length >= 3 &&
username.length <= 10 &&
!regex.test(username)
);
}
// 使用示例
let userInput = "adm1n"; // 这将返回false
let userInputValid = isValidUsername(userInput);
console.log(`"${userInput}" is valid: ${userInputValid}`);
阅读全文