2

例如,假设我们知道默认的区号是 ​​21,而国家代码是 62

123456789 -> 6221123456789
021123456789 -> 6221123456789
022123456789 -> 6222123456789
6222123456789 -> 6222123456789
(62)21 123456789 -> 6221123456789

基本上这看起来很简单。但是,我想知道电话号码是否有规则。

例如,如果电话号码的长度为 10,则前 2 位数字是否总是国家代码?

IOS 使用什么样的格式?

4

3 回答 3

1

可悲的是,不同的国家有不同的标准,甚至国家也有不同的标准,你可以在这里看到。

您可以针对不同的县制定不同的规则,也可以选择您认为有意义的格式,或者允许用户更改格式。

于 2012-11-21T13:41:18.847 回答
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]);
}
于 2013-02-25T09:09:55.937 回答
0

https://github.com/rmaddy/RMPhoneFormat#rmphoneformat

一些关于某些问题的帖子提到了这一点。这就是我将使用的。

于 2012-11-22T02:30:33.857 回答