位置:首页 > web前端 > javascript

js中正则验证 包含英文大小写、数字、特殊符号、十位以上的字符串

dearweb 发布:2023-03-02 07:55:24阅读:

可以使用正则表达式来验证包含英文大小写、数字、特殊符号、十位以上的字符串。以下是一个示例正则表达式:


/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()_+\-=[\]{};':"\\|,.<>\/?])[a-zA-Z\d!@#$%^&*()_+\-=[\]{};':"\\|,.<>\/?]{10,}$/


这个正则表达式包含了以下几个部分:


- `^` 表示匹配字符串的开始位置。

- `(?=.*[a-z])` 表示必须包含至少一个小写字母。

- `(?=.*[A-Z])` 表示必须包含至少一个大写字母。

- `(?=.*\d)` 表示必须包含至少一个数字。

- `(?=.*[!@#$%^&*()_+\-=[\]{};':"\\|,.<>\/?])` 表示必须包含至少一个特殊字符。

- `[a-zA-Z\d!@#$%^&*()_+\-=[\]{};':"\\|,.<>\/?]{10,}` 表示可以包含英文字母、数字、特殊字符,长度至少为10个字符。

- `$` 表示匹配字符串的结束位置。


你可以把这个正则表达式放在 JavaScript 的 `test()` 方法中,检查一个字符串是否符合这个规则。例如:


const regex = /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()_+\-=[\]{};':"\\|,.<>\/?])[a-zA-Z\d!@#$%^&*()_+\-=[\]{};':"\\|,.<>\/?]{10,}$/;
const str = "MyP@ssw0rd123";
if (regex.test(str)) {
  console.log("符合规则");
} else {
  console.log("不符合规则");
}


输出结果应该是 `符合规则`,因为字符串 `MyP@ssw0rd123` 包含英文大小写、数字、特殊符号,长度为11个字符,符合我们的要求。


24人点赞 返回栏目 提问 分享一波

小礼物走一波,支持作者

还没有人赞赏,支持一波吧

留言(问题紧急可添加微信 xxl18963067593) 评论仅代表网友个人 留言列表

暂无留言,快来抢沙发吧!

本刊热文
网友在读
手机扫码查看 手机扫码查看