在iPhone中从NSString中删除字符问题
我有一个价值“100,000,000”的string。 我想同时删除'€'和','。 我尝试使用[NSCharacterSet symbolSet]
但是这种方法只删除'€'而不删除','。
你可以试试:
-(NSString*)cleanString:(NSString*)str NSString *string = [NSString stringWithString:str]; NSCharacterSet *charSet = [NSCharacterSet characterSetWithCharactersInString:@"€,"]; string = [string stringByTrimmingCharactersInSet:charSet]; return string; }
用这个:
string = [string stringByReplacingOccurrencesOfString:@"€" withString:@""]; string = [string stringByReplacingOccurrencesOfString:@"," withString:@""];
最好的解决办法是从NSString的答案删除所有数字 。
string中固定清洁的替代方法是:
string = [[string stringByReplacingOccurencesOfString:@"€" withString:@""] stringByReplacingOccurencesOfString:@"," withString:@""];
string = [string stringByReplacingOccurrencesOfString:@"€" withString:@""];
其中string包含"€100,000,000"
逗号不是符号。 它是[NSCharacterSet punctuationCharacterSet]
的一部分。 但是,如果您使用该设置,它将删除小数位的持有者(期间)。
你只需要做两个操作来获得你想要的结果。
- 使用
[NSCharacterSet symbolSet]
将会照顾货币的所有符号。 - 使用
stringByReplacingOccurencesOfStrin
只删除","