IOS开发 - 判断手机号码是否符合规则

-(BOOL)isMobileNumberClassification{

/**

* 手机号码

* 移动:134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188,1705

* 联通:130,131,132,152,155,156,185,186,1709

* 电信:133,1349,153,180,189,1700

*/

//    NSString * MOBILE = @"^1((3//d|5[0-35-9]|8[025-9])//d|70[059])\\d{7}$";//总况

/**

10         * 中国移动:China Mobile

11         * 134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188,1705

12         */

NSString * CM = @"^1(34[0-8]|(3[5-9]|5[017-9]|8[278])\\d|705)\\d{7}$";

/**

15         * 中国联通:China Unicom

16         * 130,131,132,152,155,156,185,186,1709

* 4G卡(联通,移动,电信)170,176,177,178

17         */

NSString * CU = @"^1((3[0-2]|5[256]|7[0678]|8[56])\\d|709)\\d{7}$";

/**

20         * 中国电信:China Telecom

21         * 133,1349,153,180,189,1700

22         */

NSString * CT = @"^1((33|53|8[09])\\d|349|700)\\d{7}$";

/**

25         * 大陆地区固话及小灵通

26         * 区号:010,020,021,022,023,024,025,027,028,029

27         * 号码:七位或八位

28         */

NSString * PHS = @"^0(10|2[0-5789]|\\d{3})\\d{7,8}$";

//    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];

NSPredicate *regextestphs = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",PHS];

if (([regextestcm evaluateWithObject:self] == YES)

|| ([regextestct evaluateWithObject:self] == YES)

|| ([regextestcu evaluateWithObject:self] == YES)

|| ([regextestphs evaluateWithObject:self] == YES))

{

return YES;

}

else

{

return NO;

}

}

时间: 2024-11-03 02:42:19

IOS开发 - 判断手机号码是否符合规则的相关文章

iOS之判断手机号码格式是否正确

//判断手机号码格式是否正确 + (BOOL)valiMobile:(NSString *)mobile{     mobile = [mobile stringByReplacingOccurrencesOfString:@" " withString:@""];     if (mobile.length != 11)     {         return NO;     }else{         /**          * 移动号段正则表达式    

iOS开发中手机号码和价格金额有效性判断及特殊字符的限制

在实际开发过程中,经常会遇到些不能让用户随便地输入手机号码,对输入的手机号码的正确判断:有些输入框只能输入数字,不能输入字母或特殊字符:还有些如价格金额之类的就只能输入数字和小数点且小数点后面保留两位. ///// 手机号码的有效性判断//检测是否是手机号码- (BOOL)isMobileNumber:(NSString *)mobileNum{    /**     * 手机号码     * 移动:134[0-8],135,136,137,138,139,150,151,157,158,159

iOS开发-判断一个点是否在某个区域

iOS有时候需要判断是否touch到某个图的区域中.也就是touch到的这个点是否在某个图的区域范围内. 解决问题的办法很多, 这里简单介绍一种. 我们可以通过CGPath创建一个区域,区域是由路径做两点间线段并闭合成的区域,然后就可以用CGPath相关函数CGPathContainsPoint判断点是否在区域里了. 比如这里创建了一个简单的矩形.它的frame为(4, 4, 10, 10). 四个顶点的坐标分别为(4, 4), (4, 14), (14, 14), (14, 4) 显然易得,

iOS开发——判断邮箱格式

//判断邮箱格式 -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES%@",emailRegex]; ret

iOS开发——判断手机格式

添加NSString分类 1.在NSString+Check.h中,添加方法: -(BOOL)checkPhoneNumInput; 2.在NSString+Check.m文件中: -(BOOL)checkPhoneNumInput{ NSString * MOBILE = @"^1(3[0-9]|5[0-35-9]|8[025-9]|70|77)\\d{8}$"; NSString * CM = @"^1(34[0-8]|(3[5-9]|5[017-9]|8[278])\\

IOS开发 判断字符串(NSString)中有没有汉字

因为UTF8编码后汉字占3个字节,英文字符占1个字节 所以就可以根据这个来判断字符中是否包含了汉字 NSString *str = @"apple挨炮"; for (NSInteger i = 0; i<str.length; i++) { NSRange range = NSMakeRange(i, 1); NSString *subStr = [str substringWithRange:range]; const char *cStr = [subStr UTF8Stri

ios开发判断手机是否安装微信app

1.代码如下 if ([WXApi isWXAppInstalled]) 2.如果以上代码无效,请在plist文件中添加如下内容

iOS开发 判断用户是否开启了定位

- (BOOL)achiveUserLocationStart { CLAuthorizationStatus status = [CLLocationManager authorizationStatus]; if (kCLAuthorizationStatusDenied == status || kCLAuthorizationStatusRestricted == status) { // 需要打开定位服务 return YES; } return NO; }

iOS开发 判断扫码是否为有效网址

- (BOOL)achiveStringWithWeb:(NSString *)infor { NSString *emailRegex = @"[a-zA-z]+://.*"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex]; return [emailTest evaluateWithObject:infor]; }