我花了上周阅读和重新阅读 pugixml 文档,但我找不到使用 xpath 检索 PCDATA 的方法。
请解释我会从标题中提取文本:
<html><head><title>Hello!</title></head></html>
上次我问这个问题时,我得到的唯一答案是关于通用 xpath 查询,而不是专门针对 pugixml 库函数。我已经彻底阅读了 xpath 文档,所以不用担心对我进行教育。
谢谢。
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()
获取节点的值(即文本)。我在获取 PCDATA 时做了什么我首先找到了节点,然后我打电话给
node = retrive_xml_node_from_xpath();
node.first_child().value;
因此,对于您展示的示例,您将创建一个 xpath 来查找标题节点,然后获取其第一个子节点值。