IOS / Objective-C:使用StringByReplacingOccurrencesOfString进行不区分大小写搜索

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS / Objective-C:使用StringByReplacingOccurrencesOfString进行不区分大小写搜索相关的知识,希望对你有一定的参考价值。

我对NSString的不区分大小写搜索感到困惑。

我收集一个常规的stringByReplacingOccurrencesOfString总是区分大小写:

[myString stringByReplacingOccurrencesOfString:verb withString:@" "];

但有一个变量stringByReplacingOccurencesofString options: range:有一个不区分大小写的选项。

  - (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target 
                                        withString:(NSString *)replacement 
                                           options:(NSStringCompareOptions)options 
                                             range:(NSRange)searchRange;

当我尝试指定范围时出错:nil。范围是指什么,如果我不知道是否会找到searchstring,我怎么知道上面例子中指定的范围X Y?

提前感谢任何见解和建议。

答案

如果您没有要查找的特定范围,则可以传入整个字符串的范围。要获得字符串的整个范围,您可以使用[string rangeOfString:string]NSMakeRange(0, string.length)

NSString *newString = [oldString stringByReplacingOccurrencesOfString:stringToReplace 
                           withString:replacementString 
                           options:NSCaseInsensitiveSearch 
                           range:NSMakeRange(0, string.length)];

以上是关于IOS / Objective-C:使用StringByReplacingOccurrencesOfString进行不区分大小写搜索的主要内容,如果未能解决你的问题,请参考以下文章

IOS/Objective-C: MakeUILabel 使用自动布局流向多行

《iOS开发全然上手——使用iOS 7和Xcode 5开发移动与平板应用》之Objective-C新手训练营

IOS / Objective-C:核心数据NSPredicate使用IN不返回所有匹配

如何在 Flutter 插件的 Swift 编写的 iOS 部分中使用 Objective-C 框架

Objective-C:在 iOS 上使用 AVFoundation 录制视频时静音/取消静音

IOS / Objective-C:使用StringByReplacingOccurrencesOfString进行不区分大小写搜索