xpath遍历节点时遇到无标签的文本节点需要怎么遍历

xpath遍历节点时遇到无标签的文本节点需要怎么遍历?

如果直接使用 xpath(‘./*’)的话这个没有标签的文本节点就会被直接跳过,需要怎么遍历才能把他们给遍历出来

img

输出的结果像下面那样会被漏掉。要怎么写才能把他们也遍历出来?

img

部分回答来自GPT:
在XPath中,文本节点被视为节点的一部分,并且可以通过XPath来访问和遍历。如果您想要遍历无标签的文本节点,可以使用XPath轴(axis)来选择子节点,例如text()轴。

以下是一些常用的XPath表达式示例,用于遍历文本节点:

  1. 遍历所有文本节点:

    //text()
    
  2. 遍历特定元素下的所有文本节点:

    //div/text()
    

    这里的div可以替换为您要遍历的具体元素名称。

  3. 遍历特定元素及其后代元素的所有文本节点:

    //div//text()
    
  4. 遍历特定元素之后紧邻的文本节点:

    //div/following-sibling::text()[1]
    

    这里的div可以替换为您要遍历的具体元素名称。

以上示例仅为常见情况下的示范,实际情况可能因HTML结构的复杂性而有所不同。您可以根据需要灵活组合XPath表达式,以满足具体的遍历需求。