2

たとえば、デフォルトの市外局番が21で、国番号が62であることがわかっているとします。

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

基本的にこれは簡単に思えます。ただ、電話番号にはルールがあるのか​​な。

たとえば、電話番号の長さが10の場合、最初の2桁は常に国コードですか?

とにかくIOSが使用するフォーマットの種類は何ですか?

4

3 に答える 3

1

悲しいことに、国によって基準が異なり、国によっても使用する基準が異なります。これは、ここで確認できます。

YOuは、さまざまなルールでさまざまな郡をターゲットにするか、意味があると思われる形式を選択するか、ユーザーが形式を変更できるようにすることができます。

于 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 に答える