我想在标签之外提取文字。例如,
<body>
This is an exmaple
<p>
blablabla
</p>
<references>
refer 1
refer 2
</references>
</body>
我想获得文本“这是一个例子”,只有其他标签(p或参考)中没有文字。我尝试了几种方法但不起作用。 Any1可以帮忙吗?非常感谢。
答案 0 :(得分:8)
您必须将标记内的文本视为节点。使用测试节点text()
检索文本节点。例。给出:
<body>
This is an exmaple
<p>
blablabla
<\p>
<references>
refer 1
refer 2
<\references>
another example
<\body>
的XPath:
"/body/text()"
将检索body
的所有子文本节点,例如“This is an exmaple”和“another example”,同时:
"/body/text()[1]"
只会检索第一个,“这是一个例子”。如果您想要使用所有后代文本节点:
"/body//text()"
或者,您希望第一个p:
中的所有文本节点"/body/p[1]//text()"
答案 1 :(得分:2)
使用此XPath:/body/text()
。它将选择This is an exmaple
。