Android 手機號,郵箱驗證

  1. /**
  2. *驗證暱稱
  3. **/
  4.     private boolean verifyNickname() {  
  5.         String nickname = edt_username.getText().toString();  
  6.         if (nickname == null || nickname.length() == 0) {  
  7.             edt_username.setError("不能爲空");  
  8.             return false;  
  9.         }  
  10.         int len = 0;  
  11.         char[] nickchar = nickname.toCharArray();  
  12.         for (int i = 0; i < nickchar.length; i++) {  
  13.             if (isChinese(nickchar[i])) {  
  14.                 len += 2;  
  15.             } else {  
  16.                 len += 1;  
  17.             }  
  18.         }  
  19.         if (len < 4 || len > 15) {  
  20.             edt_username.setError("正確的暱稱應該爲\n1、4-15個字符\n2、2-7個漢字\n3、不能是郵箱和手機號");  
  21.             return false;  
  22.         }  
  23.         return true;  
  24.     }  
  25.   
  26.     private boolean isChinese(char c) {  
  27.         Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);  
  28.         if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS  
  29.                 || ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS  
  30.                 || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A  
  31.                 || ub == Character.UnicodeBlock.GENERAL_PUNCTUATION  
  32.                 || ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION  
  33.                 || ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {  
  34.             return true;  
  35.         }  
  36.         return false;  
  37.     }  

  1. /**
  2. * 判斷是否爲手機號  
  3. **/
  4.     private boolean isPhone(String inputText) {  
  5.         Pattern p = Pattern  
  6.                 .compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$");  
  7.         Matcher m = p.matcher(inputText);  
  8.         return m.matches();  
  9.     }  
  10.   /**
  11. * 判斷格式是否爲email  
  12. **/
  13.     public boolean isEmail(String email) {  
  14.         String str = "^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$";  
  15.         Pattern p = Pattern.compile(str);  
  16.         Matcher m = p.matcher(email);  
  17.         return m.matches();  
  18.     }  

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