iOS开发手机号正则表达式
2017-09-22 14:18
169 查看
几乎所有的项目都涉及验证手机号的格式是否正确,这就需要正则表达式来进行判断。
包括移动,联通,电信三家的手机号全部可以进行判断。在需要的方法中直接调用即可。
我这里是在验证按钮的点击事件中进行调用的。
- (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}$"; NSPredicate *pred1 = [NSPredicate 4000 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]; if (isMatch1 || isMatch2 || isMatch3) { return YES; }else{ return NO; } } }
包括移动,联通,电信三家的手机号全部可以进行判断。在需要的方法中直接调用即可。
- (void)getCodeAction:(UIButton*)sender { BOOL isPhone = [self valiMobile:_phoneField.text]; if (isPhone) { NSLog(@"匹配成功"); } else { NSLog(@"匹配失败"); } }
我这里是在验证按钮的点击事件中进行调用的。
相关文章推荐
- iOS开发,最新判断是否是手机号的正则表达式
- iOS开发用正则表达式验证身份证,邮箱,手机号等
- iOS开发笔记:实现对手机号、邮箱输入格式的判断(正则表达式)
- iOS开发正则表达式,验证是否是邮箱,手机号,银行卡号,URL等等
- iOS开发,最新判断是否是手机号的正则表达式
- iOS开发-正则表达式验证手机号
- IOS开发——正则表达式验证手机号、密码
- iOS开发:Swift里正则表达式的正确用法(限制TextField的文本输入,登录时判断正确的手机号)
- iOS最新验证手机号常用正则表达式(邮箱,车牌号)
- 【iOS开发】---- 正则表达式替换一个或一个以上空格
- iOS正则表达式,手机号、邮箱验证
- iOS开发--正则表达式参考
- iOS开发之常用的正则表达式
- iOS正则表达式检验手机号,邮箱等
- iOS正则表达式,手机号、邮箱验证
- iOS开发之常用正则表达式http://blog.csdn.net/chaoyuan899/article/details/38583759
- iOS开发-正则表达式的使用方法
- iOS正则表达式 判断手机号 邮箱 电话 数字 身份证 银行卡
- iOS开发中邮箱,电话号码,身份证,密码,昵称正则表达式验证
- iOS开发 正则表达式