順便找了網路上的一些範例:
1.
http://taichunmin.logdown.com/posts/178274-regular-expression-examples
正規表示法範例
2.
http://developer.android.com/intl/zh-tw/reference/java/util/regex/Pattern.html
Android上的API
3.
http://givemepass.blogspot.tw/2012/03/blog-post.html
如何使用正規表示法-1
4.
http://www.jackforfun.com/2008/07/regular-expression.html
驗證密碼的 Regular Expression
5.我覺得寫的蠻詳細的網頁是這個
https://www.javaworld.com.tw/jute/post/view?bid=20&id=130126&sty=1&tpg=1&age=-1
Java Regular Expression的學習筆記 [精華]
========================================================
手上的程式
需要密碼包含英文大小寫及數字,長度介於8-12之間
Java Regular Expression的學習筆記 [精華]public static int CheckPassword(String resource) { int length = resource.length(); if (length >= 12 || length < 8) return 0; try { int strong = 0; for (int i = 0; i < length; i++) { if (resource.charAt(i) >= 'a' && resource.charAt(i) <= 'z') { strong++; break; } } for (int i = 0; i < length; i++) { if (resource.charAt(i) >= 'A' && resource.charAt(i) <= 'Z') { strong++; break; } } for (int i = 0; i < length; i++) { if (resource.charAt(i) >= '0' && resource.charAt(i) <= '9') { strong++; break; } } for (int i = 0; i < length; i++) { if (!((resource.charAt(i) >= 'a' && resource.charAt(i) <= 'z') || (resource.charAt(i) >= 'A' && resource.charAt(i) <= 'Z') || (resource.charAt(i) >= '0' && resource.charAt(i) <= '9'))) { strong++; break; } } return strong; } catch (Exception e) { } // 例外 return 0;}
改寫後
參考了Patterns裡的EMAIL_ADDRESSpublic static boolean isValidPassword(String password){ return Pattern.compile("^(?=.*[a-zA-Z]+)(?=.*\\d+)[a-zA-Z0-9]{8,12}$") .matcher(password).matches();}
收工。
沒有留言:
張貼留言
有任何疑問歡迎寄信給我,
但垃圾訊息我會刪光喔!