























这是一个创建于 1734 天前的主题,其中的信息可能已经有所发展或是发生改变。
密码校验的正则 /(?!.*[\u4E00-\u9FA5\s])(?!^[a-zA-Z]+$)(?!^[\d]+$)(?!^[^a-zA-Z\d]+$)^.{6,20}$/g
当前规则是 6-20 位,大写字母,小写字母,数字和标点符号(除空格)满足两种即可。
如果我想改造这个正则,分别判断满足一种,二种,三种,四种应该怎么改写,正则不会写,拜谢大佬们了
1 AoEiuV020 2021 年 9 月 14 日 via Android不懂帮顶,这怎么看都不该用正则, |
2 cont 2021 年 9 月 14 日这个正则思路大概是:排除中文和空格,排除纯字母的字符串,排除纯数字的字符串,排除纯非字母和数字的字符串。 那符合的情况就是至少满足两种规则的字符串。 所以改造的方法是增加或减少要排除的条件。 |
3 coolan 2021 年 9 月 14 日这个写的不好,默认了只会输入中文或者标点,其实其他语言字符或者 emoji 也能被这个正则匹配到。纯正则写满足一种的,把后三个括号里的去掉可以,满足更多的,就不好写了。 |
4 coolan 2021 年 9 月 14 日(?!^[a-zA-Z]+$)排除了纯大写,纯小写,大小写混合的密码,这个也不对。 |
5 MinYa 2021 年 9 月 14 日假定标点符号为以下字符 ._~!@#$^&*(这里标点符号产品暂未确定) 1.首先正则判断是否满足至少两个条件 我感觉这样可以实现了。感谢楼上的思路 |
6 orcusfox 2021 年 9 月 14 日这种为啥要用正则呢,整个字符串遍历一下 O(N)就可以解决的事情 |
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。