Gre*_*pta 3 objective-c nsmutablestring
我有一个包含两次单词的NSMutableString.(例如/ abc ....................../abc).
现在我想用/ xyz替换/ abc的这两次出现.我想只替换第一次和最后一次出现没有其他事件发生.
- (NSUInteger)replaceOccurrencesOfString:(NSString *)target
withString:(NSString *)replacement
options:(NSStringCompareOptions)opts
range:(NSRange)searchRange
Run Code Online (Sandbox Code Playgroud)
我发现NSMutableString的这个实例方法,但我不能在我的情况下使用它.有人有任何解决方案?
您可以先找到两个范围,然后单独替换它们:
NSMutableString *s = [NSMutableString stringWithString:@"/abc asdfpjklwe /abc"];
NSRange a = [s rangeOfString:@"/abc"];
NSRange b = [s rangeOfString:@"/abc" options:NSBackwardsSearch];
if ((a.location == NSNotFound) || (b.location == NSNotFound)) {
// at least one of the substrings not present
} else {
[s replaceCharactersInRange:a withString:@"/xyz"];
[s replaceCharactersInRange:b withString:@"/xyz"];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5402 次 |
| 最近记录: |