+ (BOOL) judgeRange:(NSArray*)conditionArr Password:(NSString*)password { NSRange range; BOOL result =NO; for(int i=0; i<[conditionArr count]; i++) { range = [password rangeOfString:[conditionArr objectAtIndex:i]]; if(range.location != NSNotFound) { result =YES; } } return result; } //条件 + (NSString*)judgePasswordStrength:(NSString*)password { NSMutableArray* resultArray = [[NSMutableArray alloc] init]; NSArray* termArray1 = [[NSArray alloc] initWithObjects:@"a", @"b", @"c", @"d", @"e", @"f", @"g", @"h", @"i", @"j", @"k", @"l", @"m", @"n", @"o", @"p", @"q", @"r", @"s", @"t", @"u", @"v", @"w", @"x", @"y", @"z", nil]; NSArray* termArray2 = [[NSArray alloc] initWithObjects:@"1", @"2", @"3", @"4", @"5", @"6", @"7", @"8", @"9", @"0", nil]; NSArray* termArray3 = [[NSArray alloc] initWithObjects:@"A", @"B", @"C", @"D", @"E", @"F", @"G", @"H", @"I", @"J", @"K", @"L", @"M", @"N", @"O", @"P", @"Q", @"R", @"S", @"T", @"U", @"V", @"W", @"X", @"Y", @"Z", nil]; NSArray* termArray4 = [[NSArray alloc] initWithObjects:@"~",@"`",@"@",@"#",@"$",@"%",@"^",@"&",@"*",@"(",@")",@"-",@"_",@"+",@"=",@"{",@"}",@"[",@"]",@"|",@":",@";",@"“",@"‘",@"‘",@"<",@",",@".",@">",@"?",@"/",@"、", nil]; NSString* result1 = [NSString stringWithFormat:@"%d",[self judgeRange:termArray1 Password:password]]; NSString* result2 = [NSString stringWithFormat:@"%d",[self judgeRange:termArray2 Password:password]]; NSString* result3 = [NSString stringWithFormat:@"%d",[self judgeRange:termArray3 Password:password]]; NSString* result4 = [NSString stringWithFormat:@"%d",[self judgeRange:termArray4 Password:password]]; [resultArray addObject:[NSString stringWithFormat:@"%@",result1]]; [resultArray addObject:[NSString stringWithFormat:@"%@",result2]]; [resultArray addObject:[NSString stringWithFormat:@"%@",result3]]; [resultArray addObject:[NSString stringWithFormat:@"%@",result4]]; int intResult=0; for (int j=0; j<[resultArray count]; j++) { if ([[resultArray objectAtIndex:j] isEqualToString:@"1"]) { intResult++; } } NSString* resultString = [[NSString alloc] init]; if (intResult == 1) { resultString = @"密码强度低,建议修改"; } else if (intResult == 2 && [password length]>=6 ) { resultString = @"密码强度一般"; } if (intResult ==3 &&[password length]>6) { resultString = @"密码强度高"; } return resultString; }