如何在正则表达式中检测下划线?
- 论坛
- 如何在正则表达式中检测下划线?
20 浏览
如何在正则表达式中检测下划线?
此问题已经有了答案:
我有一个 regex
表达式用于测试我的密码:至少一个数字,至少一个大写字母,至少一个小写字母和至少一个特殊字符。
/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[^\w\s])/
但是下划线不被识别为特殊字符
。
我该如何改进这个问题?
admin 更改状态以发布 2023年5月23日
匿名的
0 Comments
这里的问题在于,对于 JavaScript 来说,\w
表示:
[a-zA-Z0-9_]
因此你会隐含地避开 _
。
解释
你正则表达式中的这部分:
(?=.*?[^\w\s]) // Match special character
等价于:
(?=.*?[^a-zA-Z0-9_\s])
参考文献
\w 元字符用于查找字母数字字符。
一个字母数字字符是从 a-z、A-Z、0-9 中的字符,包括 _(下划线)字符。