XML 和 XPath
什么是 XPath?
XPath 是 XSLT 标准中的一个主要组成部分。
XPath 可用于遍历 XML 文档中的元素和属性。
![]() |
|
XPath 路径表达式
XPath 使用路径表达式来选择 XML 文档中的节点或节点集。这些路径表达式非常类似于你在操作传统计算机文件系统时看到的表达式。
XPath 表达式可在 JavaScript、Java、XML Schema、PHP、Python、C 和 C++ 以及许多其他语言中使用。
XPath 在 XSLT 中使用
XPath 是 XSLT 标准中的一个主要组成部分。
掌握 XPath 知识将使你能够充分利用 XSL。
XPath 示例
我们将使用以下 XML 文档
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="children">
<title lang="en">哈利波特</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="web">
<title lang="en">XQuery Kick Start</title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<author>Vaidyanathan Nagarajan</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="web">
<title lang="en">学习 XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
下表列出了一些 XPath 表达式及其结果
XPath 表达式 | 结果 |
---|---|
/bookstore/book[1] | 选择 bookstore 元素下方的第一个 book 元素 |
/bookstore/book[last()] | 选择 bookstore 元素下方的最后一个 book 元素 |
/bookstore/book[last()-1] | 选择 bookstore 元素下方的倒数第二个 book 元素 |
/bookstore/book[position()<3] | 选择 bookstore 元素下方的头两个 book 元素 |
//title[@lang] | 选择所有具有名为 lang 的属性的 title 元素 |
//title[@lang='en'] | 选择所有具有值为 "en" 的 "lang" 属性的 title 元素 |
/bookstore/book[price>35.00] | 选择 bookstore 元素下所有 price 元素值大于 35.00 的 book 元素 |
/bookstore/book[price>35.00]/title | 选择 bookstore 元素下所有 price 元素值大于 35.00 的 book 元素的 title 元素 |
XPath 教程
你将在我们的 XPath 教程 中学到更多关于 XPath 的知识。