我想用一些其他组件替换myurl中的一些组件,但它不起作用..
以下是我的代码段:
NSString *Url =@"http://www.myData.com/pageId=aaa&pageSize=bbb&page=2"
在上面的网址中,我想将aaa
替换为str1
,将bbb
替换为str2
..
[Url stringByReplacingOccurrencesOfString:@"aaa" withString:str1];
[Url stringByReplacingOccurrencesOfString:@"bbb" withString:str2];
NSLog(@"Final Url = %@",Url);
最后,当我看到我的日志时,Final Url
不会将aaa
替换为str1
而bbb
替换为str2
..
感谢您阅读...
答案 0 :(得分:13)
某些字符串函数采用就地替换,但其他字符串函数会返回替换字符串。
下面的完整代码:
NSString *Url = @"http://www.myData.com/pageId=aaa&pageSize=bbb&page=2";
Url = [Url stringByReplacingOccurrencesOfString:@"aaa" withString:str1];
Url = [Url stringByReplacingOccurrencesOfString:@"bbb" withString:str2];
NSLog(@"Final Url = %@",Url);
答案 1 :(得分:13)
方法stringByReplacingOccurrencesOfString:withString:
返回NSString
,您需要存储该方法。
您只是转储返回的值并期望更改调用者。
您需要使用:
Url=[Url stringByReplacingOccurrencesOfString:@"aaa"
withString:str1];
Url=[Url stringByReplacingOccurrencesOfString:@"bbb"
withString:str2];
答案 2 :(得分:2)
使用下面的代码,它在我的最后完美运作。我测试了它。
NSString *Url =@"http://www.myData.com/pageId=aaa&pageSize=bbb&page=2";
NSString *str1 = @"str1";
NSString *str2 = @"str2";
Url = [Url stringByReplacingOccurrencesOfString:@"aaa" withString:str1];
Url = [Url stringByReplacingOccurrencesOfString:@"bbb" withString:str2];
NSLog(@"Final Url = %@",Url);
输出将是:最终网址= http://www.myData.com/pageId=str1&pageSize=str2&page=2
一切顺利!!!