使用componentsSeparatedByString分隔html字符串

时间:2013-06-12 10:06:46

标签: html iphone xcode ipad nsstring

我在我的代码中使用了以下行。但是我在程序错误中得到了“意外的'@”。我使用了\ n并将html字符串转换为单行。但是它没有将string.how分开来解决这个问题?

NSArray *temp1 = [str componentsSeparatedByString:@"</td>
                          </tr>
                          <tr>"];

4 个答案:

答案 0 :(得分:0)

NSString *str=@"<table border=1><tr><td>row 1 cell 1</td><td>row 1 cell 2</td></tr><tr><td>row 2 cell 1</td><td>row 2, cell 2</td></tr></table>";
NSArray *temp1 = [str componentsSeparatedByString:@"</td></tr><tr>"];
NSLog(@"1 = %@",[temp1 objectAtIndex:0]);
NSLog(@"2 = %@",[temp1 objectAtIndex:1]);
//output
2013-06-12 15:49:02.641 PhotoPicker[5967:11303] 1 = <table border=1><tr><td>row 1        cell 1</td><td>row 1 cell 2
2013-06-12 15:49:11.544 PhotoPicker[5967:11303] 2 = <td>row 2 cell 1</td><td>row 2, cell 2</td></tr></table>

那个错误..你可以添加你的字符串吗?

答案 1 :(得分:0)

在您的情况下,在本文中输入密钥

@"</td>
                          </tr>
                          <tr>";

删除Enter键和空格它将起作用。

答案 2 :(得分:0)

使用此NSArray *temp1 = [str componentsSeparatedByString:@"<//td><//tr><tr>"];

答案 3 :(得分:0)

正如其他人所指出的那样,你在sepaBy字符串中的元素之间有一些whitespace characters(空格,cr,tab或somesuch)。建议:

  • 在执行componentsSeparatedByString之前,使用某种HTML整理来获取更多可预测的内容。
  • 尝试使用NSArray *temp1 = [str componentsSeparatedByString:@"</td>\n</tr>\n<tr>"];或类似内容,以免破坏sortedBy字符串。