2013-11-18 1 views
0

XPath можно найти только порожденные ev('.//div[@class="parent"]/div[@class="children"]');, но не брат и сестра, к сожалению, и мне нужно найти все вхождения последовательности: <div class="1"></div><div class="2"></div><div class="3">найти все вхождения HTML элементов последовательности

не тогда, когда только один из тех, кто присутствует или они присутствуют в неправильный порядок, что вы можете предложить для достижения этого результата?

ответ

0

Я не 100% уверен ли я интерпретировать ваши граничные условия правильно, но в случае, если вы хотите, чтобы обнаружить точно последовательности по отношению к <div> с потенциально другими тегов между вы можете использовать это выражение:

.//div[@class='1' and (following-sibling::div)[1][@class = '2'] and ((following-sibling::div)[2][@class = '3'])] 

Это вернет вхождения <div class='1'>. Конечно, вы можете легко изменить это, чтобы вернуть другие вхождения с class='2' или class='3'.

Если вы хотите, чтобы исключить потенциальное вхождение других тегов между вы можете использовать:

.//div[@class='1' and (following-sibling::*)[1][local-name()='div' and @class = '2'] and ((following-sibling::*)[2][local-name()='div' and @class = '3'])] 

 Смежные вопросы

  • Нет связанных вопросов^_^