例如,假设我们知道默认区号为21,国家/地区代码为62
123456789 -> 6221123456789
021123456789 -> 6221123456789
022123456789 -> 6222123456789
6222123456789 -> 6222123456789
(62)21 123456789 -> 6221123456789
基本上这看起来很简单。但是,我想知道电话号码是否有规则。
例如,如果电话号码的长度是10,那么前2位是国家代码吗?
IOS使用什么样的格式?
答案 0 :(得分:1)
可悲的是,不同的国家/地区有不同的标准,甚至各国都有不同的标准,您可以看到here。
你可以根据不同的规则定位不同的县,或者只选择你认为合理的格式,或者允许用户更改格式。
答案 1 :(得分:1)
使用它 https://github.com/iziz/libPhoneNumber-iOS
NBPhoneNumberUtil *phoneUtil = [NBPhoneNumberUtil sharedInstance];
NSError *aError = nil;
NBPhoneNumber *myNumber1 = [phoneUtil parse:@"6766077303" defaultRegion:@"AT" error:&aError];
if (aError == nil)
{
NSLog(@"isValidPhoneNumber ? [%@]", [phoneUtil isValidNumber:myNumber1] ? @"YES":@"NO");
NSLog(@"E164 : %@", [phoneUtil format:myNumber1 numberFormat:NBEPhoneNumberFormatE164]);
NSLog(@"INTERNATIONAL : %@", [phoneUtil format:myNumber1 numberFormat:NBEPhoneNumberFormatINTERNATIONAL]);
NSLog(@"NATIONAL : %@", [phoneUtil format:myNumber1 numberFormat:NBEPhoneNumberFormatNATIONAL]);
NSLog(@"RFC3966 : %@", [phoneUtil format:myNumber1 numberFormat:NBEPhoneNumberFormatRFC3966]);
}
else
{
NSLog(@"Error : %@", [aError localizedDescription]);
}
答案 2 :(得分:0)
https://github.com/rmaddy/RMPhoneFormat#rmphoneformat
某些问题的某些帖子提到了这一点。这是我将要使用的。