2017-01-29 4 views
1

Привет я следующие HTML:Xpath выбрать конкретные элементы списка

<ul> 
 
<li><strong>Telefon:</strong></li> 
 
<li>211 600</li> 
 
<li>330 233</li> 
 
<li><strong>Fax:</strong></li> 
 
<li>336 884</li> 
 
<li><strong>e-mail:</strong></li> 
 
<li>[email protected]</li> 
 
</ul>

Мой вопрос, как бы один выбрать 2 телефонные номера в случае, если и не знаю, если следующий литий элемент жирным шрифтом текст «FAX:» или если следующий элемент li даже существует?

ответ

1

Итак, вы хотите, чтобы получить текстовое содержимое любого li, предшествующий родственный брат которого является li, текстовое содержимое которого Telefon:, но не имеющее предшествующего брата, текстовое содержимое которого Fax::

//ul/li[preceding-sibling::li[.='Telefon:']][not((self::li|preceding-sibling::li)[.='Fax:'])]/text() 
0
//ul/li/text() 

это будет возвращать список текста под li тега, вы можете использовать кусок, чтобы получить номер телефона,

аут:

Text = 211 600 
Text = 330 233 
Text = 336 884 
Text = [email protected] 
Смежные вопросы