Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
替换字符串中的字符串列表(Objective-c 2.0)_Objective C_Nsstring_Replace - Fatal编程技术网

替换字符串中的字符串列表(Objective-c 2.0)

替换字符串中的字符串列表(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

例如,我想把"abcdabcd"中出现的所有"a"和"b"替换为"z"。我目前正在重复调用
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+)