我有一个程序可以扫描网站的内容,并将其显示在文本框中。问题是它显示了html源代码。例如,如果我的html代码是:
<html>
<body>
<p>Hello</p>
</body>
</html>
而不只是显示 你好,
它会显示上面的代码......
如何让我的目标c程序只读取hello,而不是html源代码.. 我在假设这是阅读网站时的编码,但我可能错了..
如果有人能给我一个合理的答案,我将不胜感激。
最诚挚的问候,
凯文
答案 0 :(得分:2)
如果要显示网页,请使用WebKit。如果要删除xml标记,请使用NSXMLParser。有些html是有效的xml,但它取决于。 HTML只是文本,除非您使用旨在解析它的东西。
答案 1 :(得分:1)
据我所知,可可没有内置任何东西。您必须实现自己的HTML解析器才能读取代码并吐出文本。我会通过在线搜索其他实现并将它们用于cocoa来实现这一点,因为它可以为您提供大量的语言经验,或者您可以试错,并学习一些正则表达式。这个特殊的库适用于Java,但它应该是cocoa / c http://htmlparser.sourceforge.net/
的简单端口显然你可以'整理'html,然后使用XML解析器http://tidy.sourceforge.net/ 然而,有一个XML解析器(HTML是一个子集),您可以使用它来从中获取所需的信息。 http://expatobjc.sourceforge.net/
答案 2 :(得分:0)
如果它对我来说,我会在web服务器上编写一个脚本,例如php,它处理解析网页中的文本。 php有一堆内置函数,如strip_tags()
,用于处理从字符串中删除html标记。
因此所有繁重的工作都将在php脚本中完成。然后你的iPhone应用程序(假设它是你的标签的iphone)只会POST你要解析到你的PHP脚本的URL,然后将文本返回给你。
答案 3 :(得分:0)
只需使用正则表达式去除标签,进行谷歌搜索即可找到答案