从正则表达式中排除“+”和“&”字符
Excluding '+' and '&' characters from a regular expression
现在我正在开发一个客户端密码验证器,确保具有:
- 8 个字符
- 一个大写字母
- 一个小写字母
- 一个数
我现在需要排除两个特定字符,+ 和 &。我不确定在我当前的正则表达式中的什么地方插入这条规则。根据我现在所拥有的,最好的方法是什么?
/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9]).{8,}$/
由于您的示例是基于前瞻的,因此现在只需添加 negative 前瞻以排除 &
或 +
:
/^(?!.*(\+|&))(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9]).{8,}$/
匹配除 +
、&
和 \n
之外的任何内容
^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])[^+&\n]{8,}$
您不需要排除字符 +
和 &
。您只需要提及您想要匹配的内容,即 [A-Za-z0-9]
正则表达式: ^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])[A-Za-z0-9]{8,}$
现在我正在开发一个客户端密码验证器,确保具有:
- 8 个字符
- 一个大写字母
- 一个小写字母
- 一个数
我现在需要排除两个特定字符,+ 和 &。我不确定在我当前的正则表达式中的什么地方插入这条规则。根据我现在所拥有的,最好的方法是什么?
/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9]).{8,}$/
由于您的示例是基于前瞻的,因此现在只需添加 negative 前瞻以排除 &
或 +
:
/^(?!.*(\+|&))(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9]).{8,}$/
匹配除 +
、&
和 \n
^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])[^+&\n]{8,}$
您不需要排除字符 +
和 &
。您只需要提及您想要匹配的内容,即 [A-Za-z0-9]
正则表达式: ^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])[A-Za-z0-9]{8,}$