在一个字符串替换字符串列表(Objective-C的2.0)

比如我想替换所有出现在@“a”和@“B”@“abcdabcd”含@“Z”。 目前,我正在做这个反复调用stringByReplacingOccurencesOfString: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的replaceOccurrencesOfString:withString:options:range:方法(这样你就不必创建每更换了新的NSString对象调用你想)。 文档链接给你的。

分类:目标C 时间:2015-03-15 人气:3
本文关键词: 目标C,替换的NSString
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.417 (s). 10 q(s)