UPDATE: решение в комментарии.
Требуется следующее: если один из <td> в каком-либо <tr> содержит слово "Рубли", то требуется вернуть этот <tr> и все последующие, которые объединены с помощью rowspan. Т.е. в данном случае нужно вернуть 3 строки.
Пробовал так:
tr[//td[contains(text(), "Рубли")]]/following-sibling::*
но не сработало.
<table class="rates">
<tbody>
<tr>
<th colspan="7">Процентная ставка</th>
</tr>
<tr>
<th>Первоначальный взнос</th>
<th>от 30 до 89 дней</th>
<th>от 90 до 179 дней</th>
<th>от 180 до 364 дней</th>
<th>от 365 до 729 дней</th>
<th>от 730 до 1115 дней</th>
</tr>
<tr>
<td rowspan="3">Рубли</td>
<td>от 3 000 до 699 999</td>
<td>6,50</td>
<td>7,20</td>
<td>8,80</td>
<td>10,30</td>
<td>10,40</td>
</tr>
<tr>
<td>от 700 000 до 1 499 999</td>
<td>6,60</td>
<td>7,30</td>
<td>8,90</td>
<td>10,40</td>
<td>10,50</td>
</tr>
<tr>
<td>от 1 500 000</td>
<td>6,70</td>
<td>7,40</td>
<td>9,00</td>
<td>10,50</td>
<td>10,60</td>
</tr>
<tr>
<td>Доллары США</td>
<td>от 100</td>
<td>3,30</td>
<td>3,75</td>
<td>4,15</td>
<td>4,80</td>
<td>4,95</td>
</tr>
<tr>
<td>Евро</td>
<td>от 100</td>
<td>2,80</td>
<td>3,25</td>
<td>3,65</td>
<td>4,30</td>
<td>4,45</td>
</tr>
</tbody>
</table>