現在主流設定password的時候都會來個英數混合

如:abcd1234

但這樣在手機端上該怎麼去判別呢?

1.利用正規表示式即可判斷此字串有沒有特殊符號,如:#$@!%^&*+ 等

if((EditText.getText().toString()).matches(“^[0-9A-Za-z]{8,16}$”)){

//沒有特殊符號

}

2.判斷字串裡面的文字必須有英文與中文,把剛剛上面得到的結果帶入下列函式

public boolean CheckPassword(String password) {

String tem = password.substring(0, password.length());

char[] temC = tem.toCharArray();

int number = 0, letter = 0;

for (int i = 0; i < password.length(); i++) {

if (temC[i] >= 48 && temC[i] <= 57) {

//數字

}

if (temC[i] >= 65 && temC[i] <= 90) {

//大寫字母

}

if (temC[i] >= 97 && temC[i] <= 122) {

//小寫字母

letter++;

}

}

return (number != 0 && letter != 0) ? true : false;

}

依照字元所代表的數字分類,就可以知道這字串有多少數字,字母了。

另外

其實一開始也可以直接在EditText的屬性裡面加入

android:digits=“0123456789abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ”

直接限制輸入的範圍,這樣可以防止用戶輸入到特殊符號了~

Categories: AndroidCoding

0 thoughts on “[Android] 英數混合之密碼設定教學”

發表迴響

你的電子郵件位址並不會被公開。

Related Posts

Android

[Android] DrawerLayout側邊選單全螢幕的設定

今天來分享一下側邊選單的小技巧~ 先來一下原本沒有設定的圖      Read more...

Android

[Android] jar檔包裝的小技巧

相信在座各位的高級工程師 在一個專案裡code一個比一個多的時候 會發 Read more...

Coding

[iOS] app企業版上架流程教學

我們公司的iOS app終於要上架拉~~ 但我在網路上搜尋企業版上架 Read more...