使用進階規則進行密碼驗證
建立強密碼時,通常會提出特定要求以增強安全性。一組常見的規則涉及強制包含最少數量的字元、大小寫字母的混合、至少一個數字和特殊字元。
為了確保密碼符合這些標準,正規表示式 (正規表示式)被普遍採用。先前的嘗試使用了表達式「(?=^.{8,}$)((?=.*d)|(?=.*W ))(?![.n])(?=.*[ A-Z ])(?=.*[a-z]).*$" 檢查至少8 個字符,包括至少1 個大寫字母、1 個小寫字母和1 個數字或特殊字符。
但是,迎合所有指定的要求,可以使用以下增強的正則表達式:
-
至少八個字符,至少一個字母和一個數字: "^(?=.*[A-Za-z])(?=.*d)[A-Za-zd]{8,}$"
-
最少八個字符,至少一個字母、一個數字和一個特殊字元: "^(?=.*[A-Za-z])(?=.*d)(?=.*[@$!%*#?&])[A-Za-zd@$!%*# ?&]{8,}$"
-
至少8 個字符,至少1 個大寫字母、1 個小寫字母和1 個數字: "^(?=.*[a-z])(?=.*[A-Z])(?=.*d)[a-zA-Zd]{8,}$"
-
最小值八個字符,至少1 個大寫字母、1 個小寫字母、1 個數字和1 個特殊字符: "^(?=.*[a-z])(?=.*[A-Z])(?=.*d)(?=.*[@$!%*?&])[A-Za-zd@$ !%*?&]{8,}$"
-
最少8 個、最多10 個字符,至少1 個大寫字母、1 個小寫字母、1 個數字和1 個特殊字元字元: "^(?=.*[a-z])(?=.*[A-Z])(?=.*d)(?=.*[@$!%*?&] )[A- Za-zd@$!%*?&]{8,10}$"
以上是如何使用正規表示式透過進階安全規則驗證密碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!