xpath语法和实例
时间: 2024-09-13 09:17:43 浏览: 12
XPath是一种用于XML文档导航的语言,它允许开发者通过节点名称、属性、位置等信息精确地选取文档中的元素。XPath表达式基于树状结构,从根节点开始,按路径规则向下搜索。以下是XPath的一些基本语法:
1. **元素选择**: `/element` 或 `//element` 表示匹配所有层级的名为`element`的元素。例如,`/bookstore/book`选择所有的`book`元素。
2. **属性选择**: `@attribute` 用于选择具有特定属性的元素,如`author[@name='J.K. Rowling']`选中作者名是“J.K. Rowling”的所有作者。
3. **定位符**: `child::element` 和 `descendant::element` 分别表示直接子元素和所有后代元素。比如`/root/child::node`只选根元素下的直接子节点。
4. **组合选择**: 使用 `|` 进行并集操作,如`title | author`可以同时匹配标题和作者元素。
5. **条件选择**: `[@attribute=value]` 检查属性是否等于指定值,如`author[price > 50]`选择价格大于50的所有作者。
例子:假设有一个简单的XML文档,包含书店的信息:
```xml
<bookstore>
<book id="1">
<title>Harry Potter</title>
<author>J.K. Rowling</author>
<price>29.99</price>
</book>
<book id="2">
<title>The Lord of the Rings</title>
<author>Tolkien</author>
<price>39.99</price>
</book>
</bookstore>
```
使用XPath,你可以找到所有书的价格:
```xpath
//book(price)
```
这将返回两本书的价格节点。