2

値が「€100,000,000」の文字列があります。'€'と'、'を同時に削除したい。私は使用しようとしています[NSCharacterSet symbolSet]が、このメソッドは「、」を削除せずに「€」のみを削除します。

4

5 に答える 5

2

これを使って:

string = [string stringByReplacingOccurrencesOfString:@"€" withString:@""];
string = [string stringByReplacingOccurrencesOfString:@"," withString:@""];
于 2012-09-05T12:16:27.290 に答える
2

あなたが試すことができます:

-(NSString*)cleanString:(NSString*)str
    NSString *string = [NSString stringWithString:str];
    NSCharacterSet *charSet = [NSCharacterSet characterSetWithCharactersInString:@"€,"];
    string = [string stringByTrimmingCharactersInSet:charSet];
    return string;
}
于 2012-09-05T12:23:37.887 に答える
1
string = [string stringByReplacingOccurrencesOfString:@"€" withString:@""]; 

文字列が含まれる場所"€100,000,000"

于 2012-09-05T12:28:12.653 に答える
1

最善の解決策は、NSStringの回答から数字以外をすべて削除することです。

文字列の固定クリーニングの代替手段は次のとおりです。

string = [[string stringByReplacingOccurencesOfString:@"€" withString:@""] stringByReplacingOccurencesOfString:@"," withString:@""];
于 2012-09-05T12:21:42.967 に答える
0

コンマは記号ではありません。の一部です[NSCharacterSet punctuationCharacterSet]。ただし、そのセットを使用すると、小数点以下の桁数 (ピリオド) が削除されます。

必要な結果を得るには、2 つの操作を実行するだけです。

  1. [NSCharacterSet symbolSet]通貨のすべての記号を処理する which を使用します。
  2. を使用しstringByReplacingOccurencesOfStrinて、","
于 2012-09-05T12:33:42.533 に答える