在Objective-C中用%20替换空格

时间:2013-01-17 20:17:31

标签: ios objective-c

我需要验证UITextField以'%20'替换空格'',并想知道这是如何实现的?

2 个答案:

答案 0 :(得分:38)

如果您只是想用另一个值替换字符串中的字符,请查看方法stringByReplacingOccurrencesOfString:withString:on NSString

返回一个新字符串,其中接收器中所有出现的目标字符串都被另一个给定的字符串替换。

NSString *originalString = @"Sample text with spaces";

NSString *newString = [originalString stringByReplacingOccurancesOfString:@" " withString:@"%20"];

如果您尝试对网址进行编码,请在NSString上使用stringByAddingPercentEscapesUsingEncoding:

使用给定的编码返回接收器的表示,以确定将接收器转换为合法URL字符串所需的转义百分比。

NSString *originalString = @"Sample text with spaces";

NSString *newString = [originalString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

答案 1 :(得分:20)

NSString* string = @"Daylight by Maroon 5" ;
NSString* encodedString = [string stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding] ;