我有以下格式的电话号码。
+1-541-754-3010,
1-541-754-3010,
001-541-754-3010,
(541) 754-3010,
+91 5417543010,
+91-5417543010,
(+91)-5417543010
我想从上面格式的电话号码中删除区号。只需要一个电话号码。 所以输出应该是这样的 5417543010
我怎么能这样做很快?
答案 0 :(得分:1)
作为@TheTiger提案的替代方案,您可以使用PhoneNumberKit:
wchar_t *program = Py_DecodeLocale(argv[0], NULL);
Py_SetProgramName(program);
答案 1 :(得分:0)
电话号码格式化并非易事。最好使用此Google libphonenumber库进行电话号码格式化,这甚至会将区号与完整的电话号码分开。以下是样本的快速浏览。 图书馆也很快。
NBPhoneNumberUtil *phoneUtil = [[NBPhoneNumberUtil alloc] init];
NSError *anError = nil;
NBPhoneNumber *myNumber = [phoneUtil parse:@"6766077303"
defaultRegion:@"AT" error:&anError];
if (anError == nil) {
NSLog(@"isValidPhoneNumber ? [%@]", [phoneUtil isValidNumber:myNumber] ? @"YES":@"NO");
// INTERNATIONAL : +43 676 6077303
NSLog(@"INTERNATIONAL : %@", [phoneUtil format:myNumber
numberFormat:NBEPhoneNumberFormatINTERNATIONAL
error:&anError]);
// NATIONAL : 0676 6077303
NSLog(@"NATIONAL : %@", [phoneUtil format:myNumber
numberFormat:NBEPhoneNumberFormatNATIONAL
error:&anError]);
} else {
NSLog(@"Error : %@", [anError localizedDescription]);
}
NSLog (@"extractCountryCode [%@]", [phoneUtil extractCountryCode:@"823213123123" nationalNumber:nil]);
NSString *nationalNumber = nil;
NSNumber *countryCode = [phoneUtil extractCountryCode:@"823213123123" nationalNumber:&nationalNumber];