zoukankan      html  css  js  c++  java
  • XPath基础

    XPath 使用路径表达式来选取节点。和我们在常规的电脑文件系统中看到的表达式非常相似。


    在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点。

     

    表达式描述
    nodename 选取此节点的所有子节点
    / 从根节点选取
    // 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置
    . 选取当前节点
    .. 选取当前节点的父节点
    @ 选取属性
    路径表达式结果
    /bookstore/book[1] 选取属于 bookstore 子元素的第一个 book 元素。
    /bookstore/book[last()] 选取属于 bookstore 子元素的最后一个 book 元素。
    /bookstore/book[last()-1] 选取属于 bookstore 子元素的倒数第二个 book 元素。
    /bookstore/book[position()<3] 选取最前面的两个属于 bookstore 元素的子元素的 book 元素。
    //title[@lang] 选取所有拥有名为 lang 的属性的 title 元素。
    //title[@lang='eng'] 选取所有 title 元素,且这些元素拥有值为 eng 的 lang 属性。
    /bookstore/book[price>35.00] 选取所有 bookstore 元素的 book 元素,且其中的 price 元素的值须大于 35.00。
    /bookstore/book[price>35.00]/title 选取所有 bookstore 元素中的 book 元素的 title 元素,且其中的 price 元素的值须大于 35.00。

    XPath 通配符可用来选取未知的 XML 元素。

    通配符描述
    * 匹配任何元素节点
    @* 匹配任何属性节点
    node() 匹配任何类型的节点
    路径表达式结果
    /bookstore/* 选取 bookstore 元素的所有子节点
    //* 选取文档中的所有元素
    //title[@*] 选取所有带有属性的 title 元素。

    在下面的表格中,我们列出了一些路径表达式,以及这些表达式的结果:

    路径表达式结果
    //book/title | //book/price 选取所有 book 元素的 title 和 price 元素。
    //title | //price 选取所有文档中的 title 和 price 元素。
    /bookstore/book/title | //price 选取所有属于 bookstore 元素的 book 元素的 title 元素,以及文档中所有的 price 元素。

    运算符描述实例返回值
    | 计算两个节点集 //book | //cd 返回所有拥有 book 和 cd 元素的节点集
    + 加法 6 + 4 10
    - 减法 6 - 4 2
    * 乘法 6 * 4 24
    div 除法 8 div 4 2
    = 等于 price=9.80 如果 price 是 9.80,则返回 true。
    如果 price 是 9.90,则返回 false。
    != 不等于 price!=9.80 如果 price 是 9.90,则返回 true。
    如果 price 是 9.80,则返回 false。
    < 小于 price<9.80 如果 price 是 9.00,则返回 true。
    如果 price 是 9.90,则返回 false。
    <= 小于或等于 price<=9.80 如果 price 是 9.00,则返回 true。
    如果 price 是 9.90,则返回 false。
    > 大于 price>9.80 如果 price 是 9.90,则返回 true。
    如果 price 是 9.80,则返回 false。
    >= 大于或等于 price>=9.80 如果 price 是 9.90,则返回 true。
    如果 price 是 9.70,则返回 false。
    or price=9.80 or price=9.70 如果 price 是 9.80,则返回 true。
    如果 price 是 9.50,则返回 false。
    and price>9.00 and price<9.90 如果 price 是 9.80,则返回 true。
    如果 price 是 8.50,则返回 false。
    mod 计算除法的余数 5 mod 2 1
  • 相关阅读:
    最小生成树之prim算法
    洛谷P1443 马的遍历【BFS】
    (四)学习CSS之position、bottom、left、right和top属性
    (三)学习CSS之opacity 属性
    (二)学习CSS之cursor属性
    (一)学习CSS之z-index属性
    (八)学习MVC之三级联动
    (七)学习MVC之CodeFirst迁移更新数据库
    (六)学习MVC之标签a提交页面
    (四)学习MVC之修改个人资料和身份验证登陆
  • 原文地址:https://www.cnblogs.com/wanself/p/2757648.html
Copyright © 2011-2022 走看看