正則表達式驗證-必須有字母、數字、特殊字符

<!--必須有字母數字和特殊符號-->

原理:3部實現,1.必須有數字;2.必須有字母;3.必須有特殊字符

此驗證方法如果碰到 '_' 則無法驗證,因此在3部必須加上'_'字符,因爲特殊字符/W裏面不包含'_'.

java代碼:

private Boolean isValid(String password){
 boolean flag = false;
 if (password.length() >= 8) {
  /** 必須包含數字 */
  String digit = "//S*[0-9]+//S*";
  /** 必須包含英文字符 */
  String letter = "//S*[a-zA-Z]+//S*";
  /** 必須包含特殊字符 */
  String especialChar = "//S*//W+//S*|//S*[_]+//S*";
  if (Pattern.matches(digit, password)
    && Pattern.matches(letter, password)
    && Pattern.matches(especialChar, password)){
   flag = true;
  }
 }
 return flag;
}


 jsp代碼:

 var digit = /^/S*[0-9]+/S*$/;
 var letter = /^/S*[a-zA-Z_]+/S*$/;
 var letterAndDigit = /^/S*/W+/S*|/S*[_]+/S*$/;
 if (!letterAndDigit.test(newPassword.value) 
       || !letter.test(newPassword.value) 
       || !digit.test(newPassword.value))){
      alert("不可以");
 }else{
  alert("可以");
 }

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章