首頁 > Java > java教程 > 如何改進 Java 密碼驗證正規表示式以拒絕空格?

如何改進 Java 密碼驗證正規表示式以拒絕空格?

Barbara Streisand
發布: 2024-12-11 00:19:11
原創
684 人瀏覽過

How Can I Improve My Java Password Validation Regex to Reject Whitespace?

Java 中密碼驗證的正規表示式

要在Java 應用程式中驗證密碼,可以將自訂正規表示式(regexp ) 定義為一個配置參數。

問題:

正規表示式:

^.*(?=.{8,})(?=..*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=]).*$
登入後複製

強制密碼規則,例如最小長度、數字的存在、小寫和大寫字母和特殊字元。但是,它不支援識別不含空格、製表符或回車符的密碼。

解:

要解決此問題,請將下列內容附加到現有正規表示式:

(?=\S+$)
登入後複製

最終常規表達式:

^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=])(?=\S+$).{8,}$
登入後複製

解釋:

  • 解釋:
  • ^ 和$符合字串開頭和結尾的錨點,確保整個密碼已驗證。
  • (?=.*[0-9]) 斷言至少存在一個數字。
  • (?=.*[a-z]) 斷言至少存在一個小寫字母。
  • (?=.*[A-Z]) 斷言至少存在一個大寫字母letter.
  • (?=.*[@#$%^& =]) 斷言至少存在一個特殊字符(@#%$^等)。
(?=S $) 斷言不存在空格、製表符、回車符或任何空白字元。 .({8,}$ 符合任何字元 (. ) 至少出現八次,確保密碼符合最小長度要求。

以上是如何改進 Java 密碼驗證正規表示式以拒絕空格?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板