网上的都是复制粘贴,没有更新的。
自己顺手写了个分享下。
//判断是否为正确的手机号码
+ (BOOL)checkIsPhoneNumber:(NSString *)number
{
//2018最新手机段号正则
NSString *phoneRegex = @"^((13[0-9])|(14[5|6|7|8])|(15[0|1|2|3|5|6|7|8|9])|(166)|(17[2|3|5|6|7|8])|(18[0-9])|(19[8|9]))\\d{8}$";
NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",phoneRegex];
return [phoneTest evaluateWithObject:number];
}
复制代码
不过随着时间,运营商会更新新的手机段号。具体的判断还是要交由后台处理,所以在此推荐用下面的代码来判断。
//判断是否为正确的手机号码
+ (BOOL)checkIsPhoneNumber:(NSString *)number
{
NSString *phoneRegex = @"^(1[3-9])\\d{9}$";
NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",phoneRegex];
return [phoneTest evaluateWithObject:number];
}
复制代码