如何转换电话号码格式的字符串?目标c

时间:2011-09-15 03:33:55

标签: iphone nsstring nsnumber nsnumberformatter

我想将字符串转换为电话号码格式。例如,我有一个我有价值的字符串,“456897012”。现在我想用电话号码格式转换它,如(456)897-012。 那么这个过程是什么?我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:3)

我想这样的事情应该可以解决;

NSString *unformatted = @"5129876985";
NSArray *stringComponents = [NSArray arrayWithObjects:[unformatted substringWithRange:NSMakeRange(0, 3)], 
                             [unformatted substringWithRange:NSMakeRange(3, 3)], 
                             [unformatted substringWithRange:NSMakeRange(6, [unformatted length]-6)], nil];

NSString *formattedString = [NSString stringWithFormat:@"(%@)%@-%@", [stringComponents objectAtIndex:0], [stringComponents objectAtIndex:1], [stringComponents objectAtIndex:2]];
NSLog(@"Formatted Phone Number: %@", formattedString);

答案 1 :(得分:1)

确定

假设您有oldPhone

[oldPhone insertString: @"(" atIndex: 0];

[oldPhone insertString: @")" atIndex: 4];

[oldPhone insertString: @"-" atIndex: 9];

没有测试过。

希望有所帮助

相关问题