2016-06-28 102 views
0

請考慮以下HTML。使用XPath匹配節點文本後查找兄弟

<div class="block table__responsive-body" id="review_2"> 
    <div class="row"> 
     <div class="small-4 columns hide-for-large-up"> 
      <strong>Betyg</strong> 
     </div> 
     <div class="small-8 columns table__responsive-body-content">5<p> 
      <strong>Skapades den: </strong>28 jun 09:44</p> 
     </div> 
    </div> 

    <div class="row"> 
     <div class="small-4 columns hide-for-large-up"> 
      <strong>Produkt</strong> 
     </div> 
     <div class="small-8 columns table__responsive-body-content"> 
      <a href="/products/9">Volvo V50</a> 
     </div> 
    </div> 

    <div class="row"> 
     <div class="small-4 columns hide-for-large-up"> 
      <strong>Recensent</strong> 
     </div> 
     <div class="small-8 columns table__responsive-body-content"> 
      <a href="https://stackoverflow.com/users/24">John Doe</a> 
     </div> 
    </div> 
</div> 

我想找到包含給定的文本strong節點的任何前置兄弟div隨後div節點。

例如:鑑於<strong>節點文本找到的是Betyg。我希望它返回:你描述

<div class="small-8 columns table__responsive-body-content">5<p> 
    <strong>Skapades den: </strong>28 jun 09:44</p> 
</div> 

回答

1

以下XPath會做:

//div[strong/text()[contains(., 'Betyg')]]/following-sibling::div 

找到div包含strong子元素,其中包含文本Betyg。然後找到以下兄弟是div

+0

它的工作原理,謝謝! –

相關問題