XPath

XPath 代表 XML 路径语言。它使用非 XML 语法提供一种灵活的方式来寻址(指向)XML 文档的不同部分。它还可用于测试文档中的寻址节点以确定它们是否与模式匹配。

¥XPath stands for XML Path Language. It uses a non-XML syntax to provide a flexible way of addressing (pointing to) different parts of an XML document. It can also be used to test addressed nodes within a document to determine whether they match a pattern or not.

XPath 主要用于 XSLT,但也可以用作一种更强大的方式来导航使用 XPathExpression 的任何类 XML 语言文档的 DOM,例如 HTMLSVG,而不是依赖于 Document.getElementById()Document.querySelectorAll() 方法, Node.childNodes 属性,以及其他 DOM Core 功能。

¥XPath is mainly used in XSLT, but can also be used as a much more powerful way of navigating through the DOM of any XML-like language document using XPathExpression, such as HTML and SVG, instead of relying on the Document.getElementById() or Document.querySelectorAll() methods, the Node.childNodes properties, and other DOM Core features.

XPath 使用路径表示法(如 URL)来浏览 XML 文档的层次结构。它使用非 XML 语法,因此可以在 URI 和 XML 属性值中使用。

¥XPath uses a path notation (as in URLs) for navigating through the hierarchical structure of an XML document. It uses a non-XML syntax so that it can be used in URIs and XML attribute values.

注意:对 XPath 的支持差异很大;它在 Firefox 中得到了相当好的支持(尽管没有计划进一步改进支持),而其他浏览器则在较小程度上实现了它(如果有的话)。如果你需要 Polyfill,你可以考虑 js-xpathwicked-good-xpath

¥Note: Support for XPath varies widely; it's supported reasonably well in Firefox (although there are no plans to improve support further), while other browsers implement it to a lesser extent, if at all. If you need a polyfill, you may consider js-xpath or wicked-good-xpath.

文档

¥Documentation

在 JavaScript 中使用 XPath 简介

描述 XPath 的非 XSLT 使用。

XPath:Axes

XPath 规范中定义的轴的列表和定义。轴用于描述节点之间的关系。

XPath:Functions

核心 XPath 功能和 XPath 的 XSLT 特定附加功能的列表和描述。

使用 XSLT 转换 XML

XSLT 使用 XPath 来寻址 XML 文档中希望转换的代码段。

XPath 片段

这些是 JavaScript 实用函数,可以在你自己的代码中使用,基于 DOM 级别 3 XPath API。

什么是 XSLT?

对 XSLT 和 XPath 的详尽介绍假定读者事先不了解这些技术,并引导读者了解背景、上下文、结构、概念和介绍性术语。

工具

¥Tools

XPath 测试仪

在线 XPath 生成器/调试器。

相关话题