У меня есть документ HTML/XML, подобный следующему. Перед переключением на другой цвет в произвольно повторяющемся шаблоне может быть одна или несколько «tr» одного и того же цвета. Вот пример:
<tr class='red'></tr>
<tr class='blue'></tr>
<tr class='red'></tr>
<tr class='red'></tr>
<tr class='red'></tr>
<tr class='blue'></tr>
<tr class='blue'></tr>
<tr class='red'></tr>
<tr class='red'></tr>
<tr class='blue'></tr>
Я ищу выражение XPath (1.0), которое, начиная с первого 'tr' в любом цветовом 'блоке' (обратите внимание, что нет разметки, указывающей на эти блоки, только изменения в цвете ), выбирает следующие последующие 'tr' только в этом блоке.
Я пробовал следующее выражение
./following-sibling::tr[@class=preceding-sibling::tr[1]/@class]
но это также выбирает второй + 'tr' последующих блоков. Я чувствую, что близок к тому, что мне нужно, но не могу справиться с этим.
Заранее спасибо.
Редактировать: желаемый результат - это набор узлов, содержащий последующие «tr» внутри блока (и только этого блока).