美文网首页
部分正则表达式

部分正则表达式

作者: shouyu | 来源:发表于2017-04-29 15:34 被阅读0次

部分正则表达式:

1.//TODO:判断身份证号是否合法

+ (BOOL)validateIdentityCard: (NSString *)identityCard

{

BOOL flag;

if (identityCard.length <= 0) {

flag = NO;

return flag;

}

NSString *regex2 = @"^(\\d{14}|\\d{17})(\\d|[xX])$";

NSPredicate *identityCardPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regex2];

return [identityCardPredicate evaluateWithObject:identityCard];

}

2./TODO:判断邮箱是否合法

+ (BOOL)isValidateEmail:(NSString *)Email

{

NSString *emailCheck = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";

NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES%@",emailCheck];

return [emailTest evaluateWithObject:Email];

}

3.//判断手机号码格式是否正确

+ (BOOL)valiMobile:(NSString *)mobile

{

mobile = [mobile stringByReplacingOccurrencesOfString:@" " withString:@""];

if (mobile.length != 11)

{

return NO;

}else{

/**

* 移动号段正则表达式

*/

NSString *CM_NUM = @"^((13[4-9])|(147)|(15[0-2,7-9])|(178)|(18[2-4,7-8]))\\d{8}|(1705)\\d{7}$";

/**

* 联通号段正则表达式

*/

NSString *CU_NUM = @"^((13[0-2])|(145)|(15[5-6])|(176)|(18[5,6]))\\d{8}|(1709)\\d{7}$";

/**

* 电信号段正则表达式

*/

NSString *CT_NUM = @"^((133)|(153)|(177)|(18[0,1,9]))\\d{8}$";

/*

虚拟运营商号段

*/

NSString *VR_NUM = @"1[3|5|7|8|][0-9]{9}";

//^1(3[0-9]|4[579]|5[0-35-9]|7[0135-8]|8[0-9])\\d{8}$

NSPredicate *pred1 = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CM_NUM];

BOOL isMatch1 = [pred1 evaluateWithObject:mobile];

NSPredicate *pred2 = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CU_NUM];

BOOL isMatch2 = [pred2 evaluateWithObject:mobile];

NSPredicate *pred3 = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CT_NUM];

BOOL isMatch3 = [pred3 evaluateWithObject:mobile];

NSPredicate *pred4 = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", VR_NUM];

BOOL isMatch4 = [pred4 evaluateWithObject:mobile];

if (isMatch1 || isMatch2 || isMatch3 || isMatch4) {

return YES;

}else{

return NO;

}

}

}

相关文章

网友评论

      本文标题:部分正则表达式

      本文链接:https://www.haomeiwen.com/subject/lzvzzttx.html