通过c ++ pugixml库检索PCDATA xpath

时间:2012-08-10 00:18:49

标签: c++ xml xpath pugixml

我花了最后一周阅读并重新阅读pugixml文档,我找不到使用xpath检索PCDATA的方法。

请解释我是否从标题中提取文字:

<html><head><title>Hello!</title></head></html>

上次我问这个问题时,我得到的唯一答案是通用的xpath查询,而不是专门针对pugixml库函数。我已经彻底阅读了xpath文档,所以不要担心教育我。

感谢。

2 个答案:

答案 0 :(得分:1)

const char* text = doc.select_single_node("html/head/title/text()").node().value();
  • select_single_node选择PCDATA节点
  • .node()从xpath_node转换为xml_node(这是必要的,因为XPath节点是xml节点或属性)
  • .value()获取节点的值(即文本)。

答案 1 :(得分:0)

当我拿起PCDATA时我做了什么我首先找到了节点,然后我打电话给

node = retrive_xml_node_from_xpath();
node.first_child().value;

因此,对于示例,您将显示创建xpath以查找标题节点,然后获取其第一个子值。