- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{
NSString *URLString = [[url absoluteString] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSArray *temp = [URLString componentsSeparatedByString:@"\r\n"];
return YES;}
虽然预览显示\ r \ n仍然在字符串中,但不会拆分字符串。 有什么建议吗?
输入网址示例 - myapp:// bla \ r \ n \ nbla
这里是替换%esc并按' \ r \ n'分割后的字符串:
这里是替换%esc之前的url:
我怀疑更换百分比逃脱必须对它做点什么。
答案 0 :(得分:2)
根据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?
答案 1 :(得分:1)
尝试以下
NSArray *temp = [URLString componentsSeparatedByString:@"\\r\\n"];
您的初始URLString不能包含CR LF。它只包含两个符号的文字'\ r'和'\ n'
答案 2 :(得分:0)
是否显示" \ r \ n"预览?这有效:
NSLog(@"%@", [@"abc\r\ndef" componentsSeparatedByString:@"\r\n"]);
如果您的代码不起作用,您确定您的字符串不包含" \\ r \\ n"而不是" \ r \ n"?
编辑: SO"未转义"我的双斜线