xpath语法规则

<<catalog>
  <cd country="USA">
    <title>Empire Buriesque</title>
    <artist>Bob Dylan</artist>
    <price>10.80</price>
  </cd>
  <cd country="UK">
    <title>Hide your heart</title>
    <artist>Bob Dylan</artist>
    <price>10.80</price>
  </cd>
</catalog>                                  我将以这个xml文件来示例xpath的语法规则

/catalog                                       表示选择catalog根元素

/catalog/cd                               表示选择catalog元素下的所有的cd元素

/catalog/cd/price                        表示选择catalgo下所有cd元素的所有price元素

/catalog/cd/[price>1080]             表示选择price大于10.80的所有的cd元素

路径以斜线/ 开始,代表相对于一个元素的绝对路径。但是如果以2个斜线开始,表示选择文档中所有符合该条件的元素!

//cd                   这个表示文档中所有的cd元素

/catalog/*/price catalog  元素的孙子元素下所有的price元素

/*/*/price    有2个祖先的所有的price元素

//*       文档中的所有元素

/catalog/cd[1]      catalog元素的第一个子元素

/catalog/cd[last()]      catalog元素的最后一个子元素

/catalog/cd[price]     catalog元素下含有price子元素的所有cd元素

/catalog/cd[price=1090]    catalog元素下含有price = 10.90的所有cd元素

/catalog/cd[price=10.90]/price catalog元素下price元素值等于10.90的所有的cd元素的price元素

 

/catalog/cd/title | /catalog/cd/artist             选择caytalog元素的自元素的cd元素下所有的title和artist元素

//title | //artist       文档中所有的title元素和artitst元素

//@country  选择所有含有country属性

//cd[@country]    选择所有含有country属性的cd元素

//cd[@*]        含有任何属性的cd元素

//cd[@country = 'UK']              含有属性country=uk的所有cd元素

xpath的绝对路径是以斜线开始,如果是相对路径,则是没有斜线

xpath数值表达式

有2个特别的提出来讲一下:div   8div 4 = 2  就是8除以4= 2                  mod     5mod2 = 1  就是取模

 

xpath节点集函数

count()                 返回被选择的元素的数目

id()                       通过元素的唯一id选择元素

last()                    返回最后一个节点

name()               返回元素的名称

position()           返回是第几个节点

xpath还有好多其他的方法,具体的参考可以参看w3cschools.com本文只是讲解xpath非常容易学习,另外xpath是xml 的xsl一个非常重要的应用,大家要有一定的熟悉。

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值