替换字符串中的字符串列表(Objective-c 2.0)
例如,我想把"abcdabcd"中出现的所有"a"和"b"替换为"z"。我目前正在重复调用替换字符串中的字符串列表(Objective-c 2.0),objective-c,nsstring,replace,Objective C,Nsstring,Replace,例如,我想把"abcdabcd"中出现的所有"a"和"b"替换为"z"。我目前正在重复调用stringbyreplacingoccurrencesofstring:withString:: NSString *s1 = @"abcdabcd"; NSString *s2 = [[s1 stringByReplacingOccurencesOfString:@"a" withString:@"z"] stringByReplacingOccurencesOfStr
stringbyreplacingoccurrencesofstring:withString:
:
NSString *s1 = @"abcdabcd";
NSString *s2 = [[s1 stringByReplacingOccurencesOfString:@"a" withString:@"z"]
stringByReplacingOccurencesOfString:@"b" withString:@"z"];
有什么更好的方法吗?我没有找到任何类似的方法来替换字符串数组。您可以使用正则表达式:
NSString *s2 =
[s1 stringByReplacingOccurrencesOfString:@"[ab]"
withString:@"z"
options:NSRegularExpressionSearch
range:NSMakeRange(0, s1.length)];
还有NSMutableString的方法(因此您不必为每次要进行的替换调用创建新的NSString对象)。为您链接的文档 (如果您的目标是OS X 10.7+/iOS 4.0+)