2011-09-15 7 views
1

文字列を電話番号形式に変換したい。たとえば、私は値 "456897012"を持つ文字列を持っています。今私は(456)897-012のような電話番号形式でそれを変換したいと思います。 そのためのプロセスは何ですか?どうやってやるの? 電話番号の形式で文字列を変換する方法は?客観的なc

[OK]を

+4

[あなたは何を試してみました?](http://mattgemmell.com/2008/12/08/what-have-you-tried) –

+0

@Brianローチマン華麗なリンク、私はその前に見たことがありません。 。 – Krishnabhadra

+0

直接の回答ではありませんが、あなたに役立ちます.http://stackoverflow.com/questions/665111/nsnumberformatter-to-format-us-telephone-numbers – Krishnabhadra

答えて

1

はoldPhone

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

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

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

はそれをテストしなかったのあなたが持っていると仮定します。

希望すること

+1

C!= Objective C –

+0

うわー...私は "客観的"を忘れています、その大丈夫、客観的なCに変換してください:P 論理は同じです:P – Sanosay

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); 
関連する問題