视频医疗平台网站开发,网站如何做微信分享推广,动画设计考研,代运营和运营的区别XPath语法
XPath使用路径表达式选取XML文档中的节点或者节点集。
路径表达式
表达式描述nodename获得该节点下的所有节点/从根节点开始//从匹配选择的当前节点开始#xff0c;不考虑位置.选取当前节点…选取当前节点的父节点选取属性
比如#xff1a;
表达式描述nation选…XPath语法
XPath使用路径表达式选取XML文档中的节点或者节点集。
路径表达式
表达式描述nodename获得该节点下的所有节点/从根节点开始//从匹配选择的当前节点开始不考虑位置.选取当前节点…选取当前节点的父节点选取属性
比如
表达式描述nation选取nation元素所有子节点/nation选取根节点nation斜杠 / 开始表示当该元素的绝对路径nation/province选取属于nation子元素的所有province元素//province选取所有province元素nation//province选取nation元素后代的所有province元素//lang选取名为lang的所有属性
谓语
谓语放在路径表达式后面的方括号里。用于对选取的结果筛选。
路径表达式结果/nation/province[1]选取属于nation子元素的第一个province元素/nation/province[last()]选取属于nation子元素的最后一个province元素/nation/province[last()-1]选取属于nation子元素的倒数第二个province元素/nation/province[position()10选取属于nation子元素的前9个province元素位置是从1开始//title[lang]选取所有lang属性的title元素//title[lang‘eng’]选取所有lang属性值为eng的title元素nation/province[popu1000]选取nation子元素所有province元素且popu元素值大于1000nation/province[popi1000]//title选取nation子元素所有province元素其中price元素大于1000。从结果中选取所有title元素
匹配位置节点
XPath通配符可以匹配位置的XML元素。
通配符描述*匹配任何元素节点*匹配任何属性节点node()匹配任何类型的节点
比如
路径表达式结果/nation/*选取nation元素的所有子元素//*选取文档中的所有元素//title[*]选取所有带有属性的title元素
表达式组合
使用 | 将表达式组合在一起选取多个路径。
路径表达式结果//nation/state | //nation/province选取nation元素所有的state元素和province元素//state | //province选取所有的state元素和province元素/nation/province/worker | //popu选取nation元素下province元素所有的worker元素和文档中所有的popu元素
XPath轴
轴定义相对于当前节点的所有节点集
轴名称结果ancestor选取当前节点的所有祖先节点ancestor-or-self选取当前节点的所有祖先节点以及自身节点attribute选取当前节点的所有属性child选取当前节点的所有子元素descendant选取当前节点的所有子孙元素descendant-or-self选取当前节点的所有子孙元素以及自身节点following选取文档中当前节点的结束标签之后的所有节点following-sibling选取当前节点之后的所有兄弟节点namespace选取当前节点的所有命名空间节点parent选取当前节点的父节点preceding选取文档中当前节点的开始标签之前的所有节点preceding-sibling选取当前节点之前的所有兄弟节点self选取当前节点
XPath运算符
XPath表达式可返回节点集、字符串、逻辑、以及数字
运算符演示结果|//province | //state返回所有province和state元素集6 410-6 - 42*6*424div4 div 22popu 1000如果popu为1000返回true否则返回falsepopu ! 1000如果popu不是1000返回true否则返回falsepopu 1000如果popu小于1000返回true否则返回falsepopu 1000满足条件返回true否则返回falsepopu 1000满足条件返回true否则返回falsepopu 1000满足条件返回true否则返回falseorpopu 1000 or popu 2000popu为1000或者2000返回true否则返回falseandpopu 1000 and popu 2000popu为1000与2000之间的值返回true否则返回falsemod5 mod 21
函数
上下文函数
名称说明fn:position()返回当前正处理的节点的index位置fn:last()返回当前正处理节点列表中项目数目fn:current-dataTime()返回当前的dateTime带有时区fn:current-data()返回当前的日期带有时区fn:current-time()返回当前的时间带有时区fn:implicit-timezone()fn:default-collation()返回默认对照的值fn:static-base-uri