ITPub博客

首页 > Linux操作系统 > Linux操作系统 > XPARTH

XPARTH

原创 Linux操作系统 作者:spritesong 时间:2009-03-30 23:47:37 0 删除 编辑
表达式                        说明

bookstore                    选择bookstore元素的所有子结点

/bookstore                   选择根元素bookstore

bookstore/book           选择bookstore下的所有book子元素

//book                         选择文档中的所有book元素

bookstore//book          选择bookstore下的所有book子孙元素

//@lang                        选择所有名为lang的属性

二、谓词

谓词用于寻找特定的结点或一个包含特定值的结点。谓词包括在方括号中。


举例说明如下:

表达式    说明

/bookstore/book[1]   选择bookstore元素下的第一个book子元素

/bookstore/book[last()]  选择bookstore元素下的最后一个book子元素

/bookstore/book[last()-1] 选择bookstore元素下的最后一个book子元素,book子元素应是   bookstore下唯一的一个

/bookstore/book[position()<3] 选择bookstore元素下开始的两个book子元素

//title[@lang]   选择所有的包含属性名为lang的title元素

//title[@lang='eng']  选择所有的包含属性名为lang且属性值为eng的title元素

/bookstore/book[price>35.00] 选择bookstore元素下的所有包含值大于35.00的price元素的book子  元素

/bookstore/book[price>35.00]/title 选择bookstore元素下的所有包含值大于35.00的price元素 的book子元素下的title子元素

三、选择未知的结点

表达式           说明

*                     匹配任何的元素结点

@*                 匹配任何的属性结点

node()             匹配任何类型的结点

举例说明如下:

表达式              说明

/bookstore/*      选择bookstore元素下的所有子结点

//*                     选择文档中的所有元素

//title[@*]          选择所有的title元素不管其属性如何

四、多路径选择

通过有表达式中使用|操作符,你可以进行多路径选择。

示例如下:

表达式                           说明

//book/title | //book/price 选择所有book元素下的title和price子元素

//title | //price                   选择文档中的所有的title和price元素

/bookstore/book/title | //price 选择/bookstore/book/下的title子元素和文档中的所有price元素

五、XPath轴心

一个轴心定义了相对于当前结点的结点集,例表如下:

轴心名                  说明

ancestor                 选择当前结点的所有祖先

ancestor-or-self     选择当前结点及其所有祖先

attribute                 选择当前结点的所有属性

child                      选择当前结点的所有子女

descendant            选择当前结点的所有子孙

示例说明:

表达式   说明

child::book  选择当前结点的所有book子结点

attribute::lang  选择当前结点的lang属性

child::*  选择当前结点的所有子女

attribute::*  选择当前结点的所有属性

child::text()  选择当前结点的所有文本子结点

child::node()  选择当前结点的所有子结点

descendant::book 选择当前结点的所有子孙book

ancestor::book  选择当前结点的所有祖先book

ancestor-or-self::book 选择当前结点的所有祖先book,如果当前结点也是book,那么包含当前结点

child::*/child::price 选择当前结点的所有孙子结点price

descendant-or-self 选择当前结点及其所有子孙

following  选择当前结点结束标记后的东西

following-sibling 选择当前结点后的所有同科

namespace  选择当前结点的所有名字空间结点

parent   选择当前结点的双亲
 
preceding  选择当前结点开始标记前的东西

preceding-sibling 选择当前结点前的所有同科

self   选择当前结点

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/293106/viewspace-582261/,如需转载,请注明出处,否则将追究法律责任。

下一篇: Java线程总结
请登录后发表评论 登录
全部评论

注册时间:2009-03-28

  • 博文量
    62
  • 访问量
    23967