如何在objective-c iphone中替换不区分大小写的字符串?

San*_*ush 10 iphone objective-c case-sensitive nsstring ios

我有一长串一些角色.我想用其他字符替换一些字符.

例如

string1="Hello WORLD12";
string2="world";

string1= search string2 in string1 and replace it; 
//need this method in objective c

string1="Hello world12"; 
Run Code Online (Sandbox Code Playgroud)

tsa*_*yan 53

如果不区分大小写你的意思是小写替换,Ken Pespisa有你的答案,但如果你的搜索字符串不区分大小写,你可以这样做:

[mystring stringByReplacingOccurrencesOfString:@"searchString" withString:@"replaceString" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [mystring length])];
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅以下文档

- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement options:(NSStringCompareOptions)options range:(NSRange)searchRange;
Run Code Online (Sandbox Code Playgroud)


His*_*erg -4

使用NSRange获取替换字符串,然后使用stringByReplacingOccurrencesOfString函数替换字符串中的字符。

NSString *string1 = "Hello WORLD12";
NSString *string2 = "world";
NSRange *range = [string1 rangeOfString:string2];
if (range.length > 0){
    NSString *newString = [string1 substringFromIndex:range.location+6];
    [string1 stringByReplacingOccurrencesOfString:newString withString:string2];
}
Run Code Online (Sandbox Code Playgroud)