【发布时间】:2015-05-14 02:06:50
【问题描述】:
我有以下 WebElement:
<input id="" type="checkbox" value="/p1/foobar1" name="checkbox1" partition="p1" onclick=""/>
<input id="" type="checkbox" value="/p1/foobar" name="checkbox2" partition="p1" onclick=""/>
<input id="" type="checkbox" value="/p2/foobar2" name="checkbox3" partition="p2" onclick=""/>
我想在 xpath 中使用正则表达式根据 value 属性在上述源中找到第二个元素(值为 /p1/foobar 的那个)。我尝试了以下方法:
driver.findElement(By.xpath("//input[matches(@value,'.*\\/foobar$')]"));
但它会引发 InvalidSelectorException。我已经让它像这样与 cssSelector 一起使用......
driver.findElement(By.cssSelector(input[value$='\\/foobar']));
但我仍然很好奇如何使用 xpath 完成此任务。有什么建议吗?
编辑:我还应该注意,我希望能够在不知道最后一个斜杠之前的字符的情况下找到这个元素(又名/p1/)
【问题讨论】:
标签: java selenium selenium-webdriver