- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{
NSString *URLString = [[url absoluteString] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSArray *temp = [URLString componentsSeparatedByString:@"\r\n"];
return YES;}这不会拆分字符串,尽管预览显示\r\n仍在字符串中。有什么建议吗?
输入URL示例- myapp://bla\r\nbla
下面是替换% esc并由‘\r\n’拆分后的字符串:

以下是替换%esc之前的url:

我怀疑换掉百分之百的逃逸应该做点什么。
发布于 2014-03-20 19:08:10
根据Eduardo,但更接近您的代码,如下所示:
NSString *URLString = @"myapp://bla\r\nbla";
NSArray *temp = [URLString componentsSeparatedByString:@"\r\n"];
NSLog(@"%@", temp);产出:
2014-03-20 12:05:17.247 Untitled 3[437:507] (
"myapp://bla",
bla
)您的传入字符串是否可能包含文字四字符序列\r\n,它将被写入为@"\\r\\n",而不是两个控制代码的序列\r\n?
发布于 2014-03-20 19:09:33
尝试以下几点
NSArray *temp = [URLString componentsSeparatedByString:@"\\r\\n"];您的初始URLString不能包含CR。它只包含两个符号:'\r‘和'\n’。
发布于 2014-03-20 18:53:50
它在预览中显示"\r\n“吗?这样做是可行的:
NSLog(@"%@", [@"abc\r\ndef" componentsSeparatedByString:@"\r\n"]);如果您的代码不工作,是否确定您的字符串不包含"\r\n“而不是"\r\n"?
编辑:所以“未转义”我的双斜杠
https://stackoverflow.com/questions/22542436
复制相似问题