2012-05-11 8 views
1

@"(256) 435-8115"または@"256-435-81-15"のような文字列があります。私は数字だけが必要です(これは電話番号です)。これは可能ですか?私はNSStringという方法を見つけられませんでした。NSStringの数字の取得

+0

がNSRegularExpressionを見てみます。httpのhttps://developer.apple.com/library/mac/#documentation/Foundation/Reference/NSRegularExpression_Class/Reference/Reference.html – CarlJ

+0

重複:// stackoverflow.com/questions/1129521/remove-all-but-numbers-from-nsstring –

答えて

6

@"("としたくない文字を削除するstringByReplacingOccurrencesOfString: withString:を使用することができます。

-(NSString*)getNumbersFromString:(NSString*)String{ 
    NSArray* Array = [String componentsSeparatedByCharactersInSet: 
         [[NSCharacterSet decimalDigitCharacterSet] invertedSet]]; 
    NSString* returnString = [Array componentsJoinedByString:@""]; 

    return (returnString); 

} 
+0

http://stackoverflow.com/a/1426819/944634 –

+0

私はこれが最善の解決策だと思います! – Stas

0

あなたは、そのような私がずっと簡単な方法があると思います@""

+0

これは良い考えではありません.. – Stas

1

を入力:

NSString *[email protected]"(256) 435-8115"; 



NSArray *plainNumbersArray= 

[stringWithPhoneNumber componentsSeparatedByCharactersInSet: 

[[NSCharacterSet decimalDigitCharacterSet]invertedSet]]; 



NSString *plainNumbers = [plainNumbersArray componentsJoinedByString:@""]; 


NSLog(@"plain number is : %@",plainNumbers); 

OutPut: プレーン数がある:2564358115

関連する問題