iOS 判断电话号 几种方法

- (BOOL)isMobileNumber:(NSString *)mobileNum

{

/**

* 手机号码

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

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

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

*/

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

/**

10         * 中国移动:China Mobile

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

12         */

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

/**

15         * 中国联通:China Unicom

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

17         */

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

/**

20         * 中国电信:China Telecom

21         * 133,1349,153,180,189

22         */

//    NSString * CT = @"^1((33|53|8[09])[0-9]|349)\\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}$";

/    电信号段:133/153/180/181/189/177
//    联通号段:130/131/132/155/156/185/186/145/176
//    移动号段:134/135/136/137/138/139/150/151/152/157/158/159/182/183/184/187/188/147/178
//    虚拟运营商:170
@"^1(3[0-9]|4[57]|5[0-35-9]|8[0-9]|7[06-8])\\d{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];

if (

//        ([regextestmobile evaluateWithObject:mobileNum] == YES)

//        || ([regextestcm evaluateWithObject:mobileNum] == YES)

//        || ([regextestct evaluateWithObject:mobileNum] == YES)

([regextestcu evaluateWithObject:mobileNum] == YES))

{

return YES;

}

else

{

return NO;

}

}

时间: 2024-10-27 13:42:36

iOS 判断电话号 几种方法的相关文章

ios图片拉伸两种方法

ios图片拉伸两种方法 UIImage *image = [UIImage imageNamed:@"qq"]; 第一种: // 左端盖宽度 NSInteger leftCapWidth = image.size.width * 0.5f; // 顶端盖高度 NSInteger topCapHeight = image.size.height * 0.5f; // 重新赋值 image = [image stretchableImageWithLeftCapWidth:leftCapW

IOS开发之——四种方法解析Jason数据(转)

本文将介绍TouchJson. SBJson .JSONKit 和 iOS5所支持的原生的json方法,解析国家气象局API,TouchJson和SBJson需要下载他们的库 TouchJson包下载: http://download.csdn.net/detail/enuola/4523169 SBJson 包下载: http://download.csdn.net/detail/enuola/4523177 JSONKit包下载:http://download.csdn.net/detail

iOS 本地存储四种方法(没看)

在iOS开发过程中,不管是做什么应用,都会碰到数据保存的问题.将数据保存到本地,能够让程序的运行更加流畅,不会出现让人厌恶的菊花形状,使得用户体验更好.下面介绍?一下数据保存的方式: 1.NSKeyedArchiver:采用归档的形式来保存数据,该数据对象需要遵守NSCoding协议,并且该对象对应的类必须提 供encodeWithCoder:和initWithCoder:方法.前?一个方法告诉系统怎么对对象进行编码,而后?一个方法则是告诉系统怎 么对对象进行解码.例如对Possession对象

iOS 拨打电话三种方法

小弟查了很多地方的关于iOS程序拨打电话,大都不全,今天我总结了三种方法,各有不同,拿来给大家分享,希望给大家有所帮助1,这种方法,拨打完电话回不到原来的应用,会停留在通讯录里,而且是直接拨打,不弹出提示NSMutableString str=[[NSMutableString alloc] initWithFormat:@"tel:%@",@"186xxxx6979"];// NSLog(@"str======%@",str);[[UIAppl

iOS 本地存储四种方法

在iOS开发过程中,不管做什么应用都会碰到数据保存的问题.将数据保存到本地,能够让程序更加流畅,不会出现让人厌恶的菊花状态.使得用户体验更好. 下面就来介绍数据保存的方式: 1.NSKeyedArchiver:采用归档的形式来保存数据,该数据对象需要遵守NSCoding协议,并且该对象对应的类必须提供encodeWithCoder:和initWithCoder:方法. 前一个方法告诉系统怎么对对象进行编码,而后一个方法则是告诉系统怎么对对象进行解码.例如对Possession对象归档保存. 定义

判断元素16种方法expected_conditions

前言 标签(空格分隔): 判断元素 经常有小伙伴问,如何判断一个元素是否存在,如何判断alert弹窗出来了,如何判断动态的元素等等一系列的判断,在selenium的expected_conditions模块收集了一系列的场景判断方法,这些方法是逢面试必考的!!! expected_conditions 一般也简称为EC,本篇先介绍下有哪些功能: 一.功能介绍和翻译: title_is:判断当前页面的title是否完全等于(==)预期字符串,返回是布尔值 title_contains 判断当前页面

数据库 插入时 碰到NULL报错判断的一种方法(技巧)

//public static object ToDBNull(object value) 判断插入数据的时候个别参数不能为空的时候做的判断方法 //{ // if (value == null) // { // return ToDBNull.Value; // } // else // { // return value; // } } static void Main(string[] args) { // new SqlParameter(@"BirthDay",ToDBNul

iOS 判断iPhone机型的方法

+ (BOOL)isNotIphone3G { static BOOL done = FALSE; static BOOL result; if (!done) { size_t size; sysctlbyname("hw.machine", NULL, &size, NULL, 0); char *machine = malloc(size); sysctlbyname("hw.machine", machine, &size, NULL, 0)

判断数据类型几种方法

常用的判断数据类型的方法主要有:typeof,instanceof,constructor,Object.prototype.toString 下面来分别介绍 1.typeof:返回一个字符串,表示未经计算的操作数的类型. console.log(typeof 42);   // number 缺点:对于数组和对象或null 都会返回object 2.instanceof:用于测试构造函数的prototype属性是否出现在对象的原型链中的任何位置 function Car(make, model