XPath中的軸

這個博客中有一系列的例子,不只有child的例子:http://www.cnblogs.com/zhaozhan/archive/2009/09/10/1563723.html
html

   XPath 是一門在 XML 文檔中查找信息的語言。XPath 可用來在 XML 文檔中對元素和屬性進行遍歷。字體

     XPath 是 W3C XSLT 標準的主要元素,而且 XQuery 和 XPointer 同時被構建於 XPath 表達之上。網站

     推薦一個挺不錯的網站:http://www.zvon.org/xxl/XPathTutorial/General_chi/examples.html  裏面有很不錯的例子,下面的例子中紅色字體表示使用對應語法獲取的元素(或屬性)。spa

     XPath軸(XPath Axes)可定義某個相對於當前節點的節點集:htm

     一、child  選取當前節點的全部子元素blog

     二、parent  選取當前節點的父節點element

     三、descendant 選取當前節點的全部後代元素(子、孫等)文檔

     四、ancestor  選取當前節點的全部先輩(父、祖父等)get

     五、descendant-or-self  選取當前節點的全部後代元素(子、孫等)以及當前節點自己博客

     六、ancestor-or-self  選取當前節點的全部先輩(父、祖父等)以及當前節點自己

     七、preceding-sibling 選取當前節點以前的全部同級節點

     八、following-sibling 選取當前節點以後的全部同級節點

     九、preceding   選取文檔中當前節點的開始標籤以前的全部節點

     十、following   選取文檔中當前節點的結束標籤以後的全部節點

     十一、self  選取當前節點

     十二、attribute  選取當前節點的全部屬性

     1三、namespace 選取當前節點的全部命名空間節點

 

  parent軸是選取當前節點父節點,下面看簡單示例:

     //DDD/parent::*     獲取全部節點DDD的父節點

  <AAA> 

     <BBB>  
          <DDD>  
               <CCC>  
                    <DDD/>  
                    <EEE/>  
               </CCC>  
          </DDD>  
     </BBB>  
     <CCC>  
          <DDD>  
               <EEE>  
                    <DDD>  
                         <FFF/>  
                    </DDD>  
               </EEE>  
          </DDD>  
     </CCC>  
  </AAA>

 

    /AAA/BBB/parent::*    獲得根節點AAA,這樣寫在實際中沒有意義。【 若是BBB後面跟了謂詞就有意義了,這種狀況是:存在多個BBB節點,但咱們想找到某個BBB節點的父節點 】

  <AAA>  
     <BBB>  
          <DDD>  
               <CCC>  
                    <DDD/>  
                    <EEE/>  
               </CCC>  
          </DDD>  
     </BBB>  
     <CCC>  
          <DDD>  
               <EEE>  
                    <DDD>  
                         <FFF/>  
                    </DDD>  
               </EEE>  
          </DDD>  
     </CCC>  
  </AAA>

 

   /AAA/parent::*     根節點沒法獲取到parent

<AAA>  
     <BBB>  
          <DDD>  
               <CCC>  
                    <DDD/>  
                    <EEE/>  
               </CCC>  
          </DDD>  
     </BBB>  
     <CCC>  
          <DDD>  
               <EEE>  
                    <DDD>  
                         <FFF/>  
                    </DDD>  
               </EEE>  
          </DDD>  
     </CCC>  
  </AAA>

相關文章
相關標籤/搜索