我已經搜索了該網站,沒有找到我正在尋找的東西。 密碼標準:用於密碼匹配的正則表達式
- 必須是6個字符,最多50
- 必須包括1個字母字符
- 必須包括1數字或特殊字符
下面是我在Java:
public static Pattern p = Pattern.compile(
"((?=.*\\d)(?=.*[a-z])(?=.*[A-Z])|(?=.*[\\[email protected]#$%^&*\\(\\)_+\\{\\}\\[\\]\\?<>|_]).{6,50})"
);
問題是密碼1234567匹配(它是有效的)哪個它不應該。
任何幫助將是偉大的。
我永遠不會使用RegEx來驗證密碼。手動驗證它會更好更快。 – 2013-05-13 17:46:25
爲每個案例創建3個正則表達式,然後通過AND操作一起驗證。 – 2013-05-13 17:47:21
您可能想要分解要求。特別是如果您計劃通知用戶他們的密碼爲什麼不符合要求。如果你把它全部放在一個陳述中,你不能說出哪些需求未得到滿足,也不能告訴他們具體的原因。 – BLuFeNiX 2013-05-13 17:49:30