验证验证有效

时间:2016-04-09 16:30:14

标签: arrays

我正在努力让Regex进行验证 我的主要问题包括:

所以我做了这样的事情

(?=^.{10,}$)(?=.*^[a-z])(?![.\n])(?=.[A-Z]{1})([a-z0-9])(?=.*[$@$!%*#?&]{2}).*$

你有什么想法我错了吗?我用{1}进行了讨论,我会让它发挥作用,但显然我错了。

1 个答案:

答案 0 :(得分:1)

实际正则表达式:

(?=^[a-z])
(?=^[^A-Z]*[A-Z]{1}[^A-Z]*$)
(?=^[^$@$!%*#?&]*[$@$!%*#?&][^$@$!%*#?&]*[$@$!%*#?&][^$@$!%*#?&]*$)
^.{10,}$

将其放在JavaScript的一行中。

说明:

  • (?=^[a-z]) - 确保第一个字母是小写的
  • (?=^[^A-Z]*[A-Z]{1}[^A-Z]*$) - 这个怪物从开始(^)到结尾($)说明一定要找到0个或更多不是A-Z的字符,然后A-Z中的一个,然后是第一个模式。这有效地确保仅匹配字符串
  • 中的一个大写字符
  • (?=[^$@$!%*#?&]*[$@$!%*#?&]{2}[^$@$!%*#?&]*) - 与大写字母相同的机制
  • ^.{10,}$确保匹配至少10个字符并将字符串绑定到开头和结尾

正如@Shafizadeh所指出的那样,要求很有趣。

演示:

查看demo on regex101.com