Java 硒xpath计数
我一定忽略了一些非常明显的事情。这个XPath表达式有什么问题?我想获得与id的正则表达式匹配的表行数 我得到: com.thoughtworks.selenium.seleniume例外: 错误:xpath[2]无效: //tr[matches@id,“数据行-\d+”] 以下是示例html:Java 硒xpath计数,java,testing,selenium,Java,Testing,Selenium,我一定忽略了一些非常明显的事情。这个XPath表达式有什么问题?我想获得与id的正则表达式匹配的表行数 我得到: com.thoughtworks.selenium.seleniume例外: 错误:xpath[2]无效: //tr[matches@id,“数据行-\d+”] 以下是示例html: <table> <tbody> <tr id="data-row-0"><td>foo</td></tr> &
<table>
<tbody>
<tr id="data-row-0"><td>foo</td></tr>
<tr id="data-row-1"><td>bar</td></tr>
<tr id="data-row-2"><td>baz</td></tr>
</tbody>
</table>
试试-
Selenium 1.x不支持XPath 2.0。因此,不能使用XPath2.0方法,如matches、replace等
您可能需要考虑XPath 1方法,如包含、开始等 此外,为了实现你的目标,你可以尝试
//tr[开始]-with@id,“数据行-”和translate@id,'0123456789',]问题在于,他需要的是模式匹配,而不是常数。谢谢你的解释。我不知道版本的不同。一开始,我做得很好。干杯
<table>
<tbody>
<tr id="data-row-0"><td>foo</td></tr>
<tr id="data-row-1"><td>bar</td></tr>
<tr id="data-row-2"><td>baz</td></tr>
</tbody>
</table>
int tableRowCount = selenium.getXpathCount("//table[@id='whatever']/tbody/tr").intValue();