替换NSString中的字符列表

时间:2011-04-06 23:33:45

标签: iphone objective-c cocoa-touch ios nsstring

我想从我的NSString中替换一个字符列表,我不想多次使用 - (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)替换方法。对此有什么快速解决方法。

3 个答案:

答案 0 :(得分:4)

这是我用来摆脱字符串中的任何数字。它可能不是最有效的解决方案,但它是最短的。

 NSString* s = @"String to be fixed 3423";        
 NSCharacterSet* charSet = [NSCharacterSet characterSetWithCharactersInString:@"0123456789"];
 s = [[s componentsSeparatedByCharactersInSet:charSet] componentsJoinedByString:@""];

答案 1 :(得分:2)

无法更改NSString实例。要么创建一个新字符串(可能使用您提到的方法),要么使用NSMutableString。

答案 2 :(得分:0)

如果您使用的是iOS 4.x,则可以使用NSRegularExpression stringByReplacingMatchesInString:。正则表达式可以一次性捕获您尝试替换的所有字符串。