#pragma mark - 检测邮箱格式
-(BOOL)isValidateEmail:(NSString *)email {
NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
return [emailTest evaluateWithObject:email];
}
#pragma mark - 检测是否是合法的手机号
-(BOOL)isValidatePhone:(NSString *)phone
{
NSString * MOBILE = @"^1(3[0-9]|5[0-35-9]|8[025-9])\\d{8}$";
// 移动
NSString * CM = @"^1(34[0-8]|(3[5-9]|5[017-9]|8[278])\\d)\\d{7}$";
// 联通
NSString * CU = @"^1(3[0-2]|5[256]|8[156])\\d{8}$";
// 电信
NSString * CT = @"^1((33|53|8|7[09])[0-9]|349)\\d{7}$";
NSPredicate *regextestmobile = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", MOBILE];
NSPredicate *regextestcm = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CM];
NSPredicate *regextestcu = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CU];
NSPredicate *regextestct = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CT];
BOOL res1 = [regextestmobile evaluateWithObject:phone];
BOOL res2 = [regextestcm evaluateWithObject:phone];
BOOL res3 = [regextestcu evaluateWithObject:phone];
BOOL res4 = [regextestct evaluateWithObject:phone];
if (res1 || res2 || res3 || res4 ) {
return YES;
} else {
return NO;
}
}
#pragma mark - 检测是否是中文加数字字母下划线的用户名
-(BOOL)isValidateUserName:(NSString *)userName {
NSInteger length = [userName lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
length -= (length - userName.length) / 2;
if (length<4||length>15) {
return NO;
}
NSString *userNameregex = @"([\u4e00-\u9fa5]|[a-zA-Z0-9_]){4,15}$";
NSPredicate *userNamepred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",userNameregex];
return [userNamepred evaluateWithObject:userName];
}
#pragma mark -检测密码格式
-(BOOL)isValidatePassword:(NSString *)password {
//密码字符格式
NSString * regex = @"(?![^a-zA-Z0-9]+$)(?![^a-zA-Z/D]+$)(?![^0-9/D]+$).{8,32}$";
NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
return [pred evaluateWithObject:password]&&(password.length<=32)&&(password.length>=8);
}
#pragma mark 排除特定邮箱
-(BOOL)isRobotEmail:(NSString *)email {
NSString *emailRegex = @"\\w+@qq.com";
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
return [emailTest evaluateWithObject:email];
}