私のアプリケーションにUITextField
は、番号を受け取る a があります。
この数値を次のような特定の形式で表す必要があります。(62) 1234 1234
問題は、私はすでにメソッドを制御しています-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
が、この「マスク」を作成する方法がわかりません
現在、私はこのようにやっています:
string = [textField.text stringByReplacingCharactersInRange:range withString:string];
string = [[string componentsSeparatedByCharactersInSet:[[NSCharacterSet decimalDigitCharacterSet] invertedSet]] componentsJoinedByString:@""];
NSNumberFormatter * f = [[NSNumberFormatter alloc] init];
[f setNumberStyle:NSNumberFormatterDecimalStyle];
NSNumber * myNumber = [f numberFromString:string];
NSLog(@"%@", myNumber);
このコードの最後に、次の 2 つがあります。
- string : テキストの文字列表現 (例:
6212341234
aNSString
) - myNumber : この文字列の番号 (例:
6212341234
aNSNumber
)
この文字列を作成するにはどうすればよいですか:または(62) 1234 1234
に基づいて?myNumber
string
編集
rdelmar の質問への回答:
数字には 10 個または 11 個の数字を含めることができ、次のようにそれらを区切るつもりです:
(62) 1234 1234
または(62) 12345 1234