技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> CSS/HTML --> XML路径语言:XPath

XML路径语言:XPath

浏览:1994次  出处信息

XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。最常见的XPath表达式是路径表达式。路径表达式是从一个XML节点(当前的上下文节点)到另一个节点、或一组节点的书面步骤顺序。这些步骤以“/”字符分开,每一步有三个构成成分:

  • 轴描述(用最直接的方式接近目标节点)
  • 节点测试(用于筛选节点位置和名称)
  • 节点描述(用于筛选节点的属性和子节点特征)

一般情况下,我们使用简写后的语法。虽然完整的轴描述是一种更加贴近人类语言,利用自然语言的单词和语法来书写的描述方式,但是相比之下也更加罗嗦。

最简单的XPath如下:

  • /A/B/C

在这里选择所有符合规矩的C节点:C节点必须是B的子节点(B/C),同时B节点必须是A的子节点(A/B),而A是这个XML文档的根节点(/A)。此时的这种描述法类似于磁盘中文件的路径(URI),从盘符开始顺着一级一级的目录最终找到文件。

这里还有一个复杂一些的例子,包含了全部构成成分(请详细的看):

  • A//B/*[1]

此时选择的元素是:在B节点下的第一个节点(B/*[1]),不论节点的名称如何(*);而B节点必须出现在A节点内,不论和A节点之间相隔几层节点(//B);与此同时A节点还必须是当前节点的子节点(A,前边没有/)。

在未缩写语法里,两个上述范例可以写为:

  • /child::A/child::B/child::C
  • child::A/descendant-or-self::B/child::node()[1]

在XPath的每个步骤里,通过完整的轴描述(例如:childdescendant-or-self)进行明确的指定,然后使用::,它的后面跟着节点测试的内容,例如上面范例所示的A以及node()

参考文档:http://zh.wikipedia.org/wiki/XPath

建议继续学习:

  1. XML和JSON    (阅读:6717)
  2. htaccess二级目录重写找不到路径    (阅读:5542)
  3. Bash如何取得当前正在执行的脚本的绝对路径?    (阅读:4798)
  4. 信XML,得自信    (阅读:3930)
  5. 前端模板引擎    (阅读:3779)
  6. xml转数组的方法    (阅读:3490)
  7. Ajax和WEB服务数据格式:XML SOAP HTML    (阅读:3040)
  8. 使用javascript将XML解析为JSON    (阅读:2334)
  9. XML实体注入漏洞安全警告    (阅读:2310)
  10. 实例演示SimpleXMLElement的用法    (阅读:2221)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:你真的了解HTML吗
后一篇:制作CSS气泡框 >>
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1