Xcode,摆脱未知序列?

时间:2012-07-18 04:08:50

标签: javascript ios replace

    NSString* attribute_list = [wvPage stringByEvaluatingJavaScriptFromString:
            @"var attrs=document.getElementsByClassName('attributes-list')[0].innerHTML;attrs = attrs.replace(/(?:<\!\-\-[^\-]*\-\->|<li[^>]*>|&nbsp;|\ )/ig, '');attrs = attrs.replace(/<\/li[^>]*>/ig, '|');"];

以上是我的代码。我想在JavaScript中替换。

事情很好,但我收到了警告。我如何禁止这些警告?

Unknown escape sequence '\!'
Unknown escape sequence '\-'
...

等等。

1 个答案:

答案 0 :(得分:0)

您使用的字符串@""允许特殊的转义字符(例如,想一想\n如何神奇地成为新行)。这意味着代码中的每个反斜杠都不应该以这种方式解析,必须加倍才能保持逐字。

例如:

@"var attrs=document.getElementsByClassName('attributes-list')[0].innerHTML;attrs = attrs.replace(/(?:<\\!\\-\\-[^\\-]*\\-\\->|<li[^>]*>|&nbsp;|\\ )/ig, '');attrs = attrs.replace(/<\\/li[^>]*>/ig, '|');"];