2011-06-04 56 views
8

我有一些字符很長的字符串。我想用其他字符替換一些字符。如何在objective-c iphone中替換不區分大小寫的字符串?

例如

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

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

string1="Hello world12"; 
+0

這不是一個明確的問題,請解釋你的問題。 – DreamOfMirrors 2011-06-04 11:54:53

+0

看起來他只想替換大寫字符串中的部分。不是整個字符串。 – 2011-06-04 14:44:22

回答

-2

使用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]; 
} 
1

可以調用的NSString方法stringByReplacingOccurrencesOfString:withString:

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

NSString *string3 = [string1 stringByReplacingOccurrencesOfString:@"WORLD" withString:string2]; 
47

如果不區分大小寫您的意思是較低的情況下更換,肯Pespisa有你的答案,但如果不區分大小寫約您的搜索字符串,你可以這樣做:

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

更多信息請參閱的文件:

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