可以使用NSXMLParser来解析HTML

时间:2012-12-31 20:51:49

标签: iphone ios xcode nsxmlparser

  

可能重复:
  Using an NSXMLParser to parse HTML

我使用NSXMLParser来解析xml文件和RSS提要。我感到困惑的是,NSXMLParser是仅适用于xml还是我们可以使用它来解析html。从互联网上的一点点搜索,我假设有些人用它来解析HTML。

但是使用NSXMLParser和html有什么限制或缺点吗?

1 个答案:

答案 0 :(得分:4)

如果HTML文档格式正确xhtml,那么它将起作用。作为猜测,你不会使用格式良好的xhtml,因为它在现实世界中很少见。

HTML(包括HTML 4和5)不是格式良好的XML,也不会被XML解析器成功解析。

考虑以下示例:

<HTML>
<HEAD>
<META http-equiv=content-type content="text/html; charset=UTF-8">
<TITLE>Sample Document</TITLE>
</HEAD>
<BODY>
<H1>Sample Document</h1>
<P>This document will <strong><em>fail</strong></em> as XML.
</BODY>
</HTML>

在上面的文档中,内容类型不是引号(<META http-equiv=content-type …),<H1></h1>是不同的情况,<P>没有结束标记,并且strongem未正确嵌套。这是有效的HTML但无效的XML。