在設(shè)置注冊(cè)賬號(hào)的界面時(shí),經(jīng)常遇到要求計(jì)算用戶(hù)輸入的密碼是否過(guò)于簡(jiǎn)單.比如包含數(shù)字,字符,字母大小寫(xiě) 中至少兩種就算合格.
根據(jù)ASCII碼的簡(jiǎn)單計(jì)算
- (BOOL)calculatePwdStrength:(NSString*)str{
inta =0;//數(shù)字
intb =0;//小寫(xiě)字母
intc =0;//大寫(xiě)字母
intd =0;//字符
for(inti =0; i
if(([strcharacterAtIndex:i]>=48) && ([strcharacterAtIndex:i]<=57)) {
a=1;
}
if(([strcharacterAtIndex:i]>=65) && ([strcharacterAtIndex:i]<=90)) {
b=1;
}
if(([strcharacterAtIndex:i]>=97) && ([strcharacterAtIndex:i]<=122)) {
c=1;
}
if((([strcharacterAtIndex:i]>=33) && ([strcharacterAtIndex:i]<=47))||(([strcharacterAtIndex:i]>=91) && ([strcharacterAtIndex:i]<=96))||(([strcharacterAtIndex:i]>=123) && ([strcharacterAtIndex:i]<=126))) {
d=1;
}
}
if(a+b+c+d >1) {
return1;
}else{
return0;
}
}
這樣 調(diào)用[self calculatePwdStrength:_newPassword.text] ==0 即可判斷出過(guò)于簡(jiǎn)單的密碼