-(BOOL) Ismobilenumber: (NSString *) Mobilenum {/** Mobile Phone number * Move: 134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188 * Unicom: 130,131,132,152,155,156 , 185,186 * Telecom: 133,1349,153,180,189*/NSString* MOBILE =@"^1 (3[0-9]|5[0-35-9]|8[025-9]) \\d{8}$"; /** 10 * Mobile: China Mobile 11 * 134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188 A*/NSString* CM =@"^1 (34[0-8]| ( 3[5-9]|5[017-9]|8[278] \\d) \\d{7}$"; /** 15 * Unicom: China Unicom * 130,131,132,152,155,156,185,186*/NSString* CU =@"^1 (3[0-2]|5[256]|8[56]) \\d{8}$"; /** 20 * China Telecom: Telecom * 133,1349,153,180,189*/NSString* CT =@"^1 ((33|53|8[09]) [0-9]|349) \\d{7}$"; /** 25 * Mainland China fixed and PHS 26 * Area code: 010,020,021,022,023,024,025,027,028,029 27 * Number: seven-bit or eight-bit -*/ //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]; if([regextestmobile evaluatewithobject:mobilenum] = =YES)|| ([regextestcm evaluatewithobject:mobilenum] = =YES)|| ([regextestct evaluatewithobject:mobilenum] = =YES)|| ([regextestcu evaluatewithobject:mobilenum] = =YES)) { returnYES; } Else { returnNO; } }
Transferred from: http://blog.csdn.net/hopedark/article/details/41545891
IOS-Development notes: About mobile phone numbers "turn"