XPATH for tr,它有多个文本

时间:2014-08-08 11:49:25

标签: xpath

我需要<tr>的XPATH,其中包含文字&#39; abc&#39;在第二个<td>和文字&#39; xyz&#39;在第三个<td>

试过但没有运气。

1 个答案:

答案 0 :(得分:0)

final String XPATH = "//tr[td[contains(.,'abc')] and td[contains(.,'xyz')]";

您的表达式实际上几乎选择了您想要的内容(一旦您修复了丢失的最后])。您只需指定<td>元素的位置。

//tr[td[2][contains(.,'abc')] and td[3][contains(.,'xyz')]]

对于以下XML文档:

<document>
  <table>
    <tr>
       <td>foo</td>
       <td>abc</td>       
       <td>xyz</td>
    </tr>
    <tr>
       <td>foo</td>
       <td>bar</td>       
       <td>xyz</td>
    </tr>
  </table>
</document>

这将返回一个节点集,其中包含文档顺序的文档的第一个<tr>元素。