xpath 表达式中的/text()与//text()的区别
时间: 2023-12-08 22:06:46 浏览: 110
用XPath 表达式从 XML 文档中提取信息
在xpath表达式中,/text()和//text()都表示获取节点的文本内容,但二者的区别在于:
1. /text()只能获取当前节点的文本内容,而//text()可以获取当前节点及其子孙节点的所有文本内容。
2. /text()只能使用在节点选择器的末尾,表示获取所选节点的文本内容;而//text()可以使用在任何位置,表示获取当前节点及其子孙节点的所有文本内容。
例如,对于以下HTML代码:
```
<div>
<p>Hello <strong>World</strong></p>
</div>
```
使用xpath表达式“/div/p/text()”可以获取到“Hello”的文本内容,但无法获取“World”的文本内容;而使用xpath表达式“//div//text()”可以获取到“Hello”和“World”的文本内容。
总之,/text()只适用于获取当前节点的文本内容,而//text()则适用于获取当前节点及其子孙节点的所有文本内容。
阅读全文