我沒有要求使用正則表達式 並且在下面的驗證標準正則表達式用於驗證密碼
驗證密碼密碼應該包含任何3出來的4種類型的字符的:
- 小寫字母(a,b,c,d,.......,y,z)
- 大寫字母(A,B,C,D,......,Y,Z)
- 數字(0,1,2,3,4,5,6,7,8,9)
- 特殊字體ERS($,&,%,!,#,@)」
我想出了下面的正則表達式,但問題是,它僅驗證,直到第9個字符,並允許的話之後的任何字符
^(?=.{9,})((?=.*\d)(?=.*[a-z])(?=.*[A-Z])|(?=.*\d)(?=.*[a-z])(?=.*[[email protected]#$%&])|(?=.*\d)(?=.*[A-Z])(?=.*[[email protected]#$%&])|(?=.*[a-z])(?=.*[A-Z])(?=.*[[email protected]#$%&])).*$
編輯:我已經經歷了類似的問題,但我的問題是不同的,因爲它期望滿足4個標準中的3個並且只有有限的字符集。
任何幫助,將不勝感激!
可能的重複[使用正則表達式c#驗證密碼](http://stackoverflow.com/questions/34715501/validating-password-using-regex-c-sharp) –
如果你可以添加一個例子,它會很好。 –
這些測試中的每一個都會在幾行非正則表達式代碼中實現。有什麼理由必須將它們全部組合成一個正則表達式嗎?如果在六個月後當需求發生變化時您再回到那段代碼中,您是否還記得正則表達式版本的工作原理? –