rmaddy によって開発された RMPhoneFormat クラスを使用して、国際コードで電話番号を検証しようとしています。たとえば、米国の番号では問題なく機能します。
RMPhoneFormat *fmt = [[RMPhoneFormat alloc] initWithDefaultCountry:@"us"];
BOOL valid = [fmt isPhoneNumberValid:@"+19998887766"];
ただし、スイスの番号 (国際コードを使用する場合は先頭のゼロが削除されます。つまり、0779998877 は +41779998877 になります) は機能します。次のコードは、番号が無効ではないにもかかわらず、無効であることを示しています。
RMPhoneFormat *fmt = [[RMPhoneFormat alloc] initWithDefaultCountry:@"ch"];
BOOL valid = [fmt isPhoneNumberValid:@"+41779998877"];
国際コードがなく、先行ゼロがある場合、正しく検証されることに注意してください。
RMPhoneFormat *fmt = [[RMPhoneFormat alloc] initWithDefaultCountry:@"ch"];
BOOL valid = [fmt isPhoneNumberValid:@"0779998877"];
このクラスを使用して電話番号を国際コードで検証する方法を知っている人はいますか?
前もって感謝します!