【发布时间】:2010-12-02 15:50:56
【问题描述】:
我的应用程序将一个包含大量链接的大型 html 格式文件作为其数据的一部分。类似于在 Google、Yahoo 或其他搜索引擎上搜索任何内容时会得到的结果:URL 列表和描述或其他文本。
我一直在尝试开发一个可以解析 URL 和描述并将它们保存到文本文件中的函数,但事实证明这很难,至少对我来说是这样。所以,如果我有:
<a href="http://www.w3schools.com">Visit W3Schools</a>
我会解析http://www.w3schools.com 和Visit W3Schools 并将它们保存在一个文件中。
有什么方法可以做到这一点?用纯 C 语言?
任何帮助表示赞赏。
【问题讨论】:
-
如果 HTML 真的只是
<a href...>...</a>,那么您可以使用 XSL。否则,您将需要一个完整的 HTML 解析器。甚至可能是一个 shell 脚本 + Lynx(基于文本的浏览器)+ awk。如果这是一次性任务,那么我会在编辑器中搜索/替换。 (再次假设 XHTML 格式正确。) -
证明它对你来说很难的主要原因是你试图在 C 中完成它。C 真的,真的,真的不是为这种任务而构建的。较新的语言为字符串操作提供了更复杂的工具。 C 甚至没有内置真正的文本类型。当你使用 char* 和 char[N] 时,你就是在伪造它。