字符串对象:判断用户名是否合法。 (1)不能包含空格,split() (2)长度8-16个字符 (3)必须包含数字(ASCII:48-57)、字母(ASCII:65-90,97-122)、符号(ASCII:33-38,!"#¥%&)至少2种
2条回答 默认 最新
- Yirujet 2021-09-27 09:34关注
const checkValid = str => {
let invalidMsg = ''
const regNoSpace = /\s/g
const regLength = /.{8, 16}/g
const regCharCode = /[0-9a-zA-Z!"#¥%&]/g
if (regNoSpace.test(str)) {
invalidMsg = '不能包含空格'
}
if (!regLength.test(str)) {
invalidMsg = '长度8-16个字符'
}
if ([...str].reduce((p, c) => p += regCharCode .test(c) ? 1 : 0, 0) < 2) {
invalidMsg = '必须包含数字(ASCII:48-57)、字母(ASCII:65-90,97-122)、符号(ASCII:33-38,!"#¥%&)至少2种'
}
return invalidMsg
}本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
- ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
- ¥15 MATLAB中streamslice问题
- ¥15 如何在炒股软件中,爬到我想看的日k线
- ¥15 51单片机中C语言怎么做到下面类似的功能的函数(相关搜索:c语言)
- ¥15 seatunnel 怎么配置Elasticsearch
- ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
- ¥15 (标签-MATLAB|关键词-多址)
- ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
- ¥500 52810做蓝牙接受端