我们整个上午都试图找出我们试图强制实施的AD密码限制的正则表达式模式。有什么想法吗?
必须至少有以下特殊字符之一,但必须能够允许所有字符: ! @#$%^& *() - _ + = {} [] | \:; “'<>,。?/
长度为8到14个字符
可以按任意顺序
我尝试了大约50种组合,而特殊字符部分则让我望而却步。
我在这里或网上找到的那个不幸包括括号特殊字符和其他一些字符。
答案 0 :(得分:1)
字符串开头的多个单独前瞻应该有效(demo)
^(?=.*?[a-z])(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#!@$%^&*()\-_+={}[\]|\\:;"'<>,.?\/]).{8,14}$
^ # anchors to start of string
(?=.*?[a-z]) # lookahead for lowercase
(?=.*?[A-Z]) # lookahead for uppercase
(?=.*?[0-9]) # lookahead for numbers
(?=.*?[#!@$%^&*()\-_+={}[\\]|\:;"'<>,.?\/]) # lookahead for special characters
.{8,14} # the actual capture, also sets boundaries for 8-14
$ # anchors to end of string
更新为包含!和@。在第一次测试中错过了它们。
更新以逃脱连字符。