2012-07-12 11 views
9
documento

Esempio:XPath estrazione fratello

<h4 class="bla">July 12</h4> 
<p>Tim</p> 
<p>Jon</p> 
<h4 class="bla">July 13</h4> 
<p>James</p> 
<p>Eric</p> 
<p>Jerry</p> 
<p>Susie</p> 
<h4 class="date">July 14</h4> 
<p>Kami</p> 
<p>Darryl</p> 

Quello che voglio fare è prendere tutto p i nodi che sono stati pubblicati il ​​13 luglio Nota che sono fratelli di h4 e non i bambini. Quindi, in questo esempio, mi piacerebbe ottenere i nodi p che contengono i seguenti nomi: James, Eric, Jerry e Susie.

mi sono avvicinato con il seguente, ma ha scelto tutti p nodi che è venuto dopo il 13 luglio h4 nodo, dal momento che sono tutti fratelli. In altre parole, non aveva una condizione di arresto.

//h4[string() = 'July 13']/following-sibling::p 

risposta

8

Utilizzare questa XPath:

//p[preceding-sibling::h4[1][. = 'July 13']] 
+1

che ha funzionato perfettamente – user1522091

0

Prova questo:

//p[preceding-sibling::h4/text() = 'July 13' and following-sibling::h4/text() = 'July 14'] 
+0

anche questo ha funzionato, grazie – user1522091

Problemi correlati