打印本文 打印本文 关闭窗口 关闭窗口
Dom访问Xml-asp.net入门(九)
作者:武汉SEO闵涛  文章来源:敏韬网  点击数6159  更新时间:2009/4/23 10:38:55  文章录入:mintao  责任编辑:mintao
位置匹配
对于每一个元素,它的各个子元素是有序的。如:

举 例

含 义

匹配结果

/A/B/C[1]

A元素→B元素→C元素的第一个子元素

name值为b的B元素

/A/B/C[last()]

A元素→B元素→C元素的最后一个子元素

id值为e2的E元素

/A/B/C[position()>1]

A元素→B元素→C元素之下的位置号大于1的元素

id值为d1的D元素和两个具有id值的E元素

属性及属性值
在XPath中可以利用属性及属性值来匹配元素,要注意的是,元素的属性名前要有"@"前缀。例如:

举 例

含 义

匹配结果

//B[@id]

所有具有属性id的B元素

id值为b1和b2的两个B元素

//B[@*]

所有具有属性的B元素

两个具有id属性的B元素和一个具有name属性B元素

//B[not(@*)]

所有不具有属性的B元素

A元素→C元素下的B元素

//B[@id="b1"]

id值为b1的B元素

A元素下的B元素

亲属关系匹配
XML文档可归结为树型结构,因此任何一个节点都不是孤立的。通常我们把节点之间的归属关系归结为一种亲属关系,如父亲、孩子、祖先、后代、兄弟等等。在对元素进行匹配时,同样可以用到这些概念。例如:

举 例

含 义

匹配结果

//E/parent::*

所有E节点的父节点元素

id值为a1的A元素和id值为c1的C元素

//F/ancestor::*

所有F元素的祖先节点元素

id值为a1的A元素和id值为c2的C元素

/A/child::*

A的子元素

id值为b1、b2的B元素,id值为c2的C元素,以及没有任何属性的E元素

/A/descendant::*

A的所有后代元素

除A元素以外的所有其它元素

//F/self::*

所有F的自身元素

F元素本身

//F/ancestor-or-self::*

所有F元素及它的祖先节点元素

F元素、F元素的父节点C元素和A元素

/A/C/descendant-or-self::*

所有A元素→C元素及它们的后代元素

id值为c2的C元素、该元素的子元素B、D、F元素

/A/C/following-sibling::*

A元素→C元素的紧邻的后序所有兄弟节点元素

没有任何属性的E元素

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9]  下一页

打印本文 打印本文 关闭窗口 关闭窗口