XPath 选取未知节点 & 选取若干路径

选取未知节点

通配符 描述
* 匹配任何元素节点,选择所有由星号之前的路径所定位的元素
@* 匹配任何属性节点
not(@*) 匹配没有任何属性的节点
node() 匹配任何类型的节点

 

选取若干路径

运算符 描述
| 选取若干个路径

 

桔色字体表示使用语法匹配的结果

语法:/html/body/div/p/*  选择所有路径依附于/html/body/div/p/的元素
<html lang="en">
  <head>
  </head>
  <body>
    <div>       <p id="s1">         <title>20</title>         <span></span>       </p>       <p id="s2"></p>       <p></p>     <div>   </body> </html>
语法:/*/*/*/p  选择所有的有3个祖先元素的p元素,即在第四层的p元素
<html lang="en">
  <head>
  </head>
  <body>
    <div>
      <p id="s1">
        <title>20</title>
        <span></span>
      </p>
      <p id="s2"></p>
      <p></p>
    <div>
  </body>
</html>
语法://*  选择所有元素
<html lang="en">
  <head>
  </head>
  <body>
    <div>
      <p id="s1">
        <title>20</title>
        <span></span>
      </p>
      <p id="s2"></p>
      <p></p>
    <div>
  </body>
</html>
语法://title|//span  选择所有的tltle元素和span元素
<html lang="en">
  <head>
  </head>
  <body>
    <div>
      <p id="s1">
        <title>20</title>
        <span></span>
      </p>
      <p id="s2">
        <title>20</title>
        <span></span>
          </p>
      <p></p>
    <div>
  </body>
</html>
语法:/html/body/div/p/title|/html/body/div/p/span  选择html下body下的div下的p的title元素和span元素
<html lang="en">
  <head>
  </head>
  <body>
    <div>
      <p id="s1">
        <title>20</title>
        <span></span>
      </p>
      <p id="s2">
        <title>20</title>
        <span></span>
          </p>
      <p></p>
    <div>
  </body>
</html>

 

posted @ 2017-11-27 13:11  coco1989  阅读(479)  评论(0编辑  收藏  举报