1

我目前正在开发一个函数来查找 html 文件中引用的所有图像,目前我正在尝试在文件中找到这些子字符串:".bmp" ".gif" ".jpg" ".png"并且还想找到它们的根,例如:/images/foo/然后使用这两个子字符串来制作一个新的字符串:/images/foo/bar.jpg我知道我将如何连接字符串,但我不知道如何定位实际的子字符串,我现在感到非常不知所措,非常感谢一些帮助。

4

1 回答 1

5

这个问题的“正确”答案应该敦促您使用为工作而构建的工具。聪明的人写东西是libxml有原因的。重新发明轮子只会让事情变得更加困难。libxml例如,您可以轻松地遍历 XML 树,如下所示:

for (cur_node = a_node; cur_node; cur_node = cur_node->next) {
    if (cur_node->type == XML_ELEMENT_NODE) {
        printf("node type: Element, name: %s\n", cur_node->name);
}

“错误”的答案是想出一些“技巧”来查找图像字符串的开头,方法是查找图像标记 ( ) 的开头或Doug 在评论中提到<img的引用。"

你会注意到我在引文中指出了正确和错误。我是个纯粹主义者,强烈建议使用面向 XML 的解决方案,因为它完全可概括且易于扩展(明天您可能会说:哦,我还需要锚文本)。DOM 解析器可以轻松解决每个后续问题。

但是,如果您正在研究概念验证或原型(甚至可能是家庭作业),其中一切都格式良好并且您没有在野外发布您的代码,那么“错误”的方法可能就足够了。

于 2012-08-21T16:45:17.077 回答