如何将cssSelector用于定位任何数字?

时间:2018-12-22 22:27:36

标签: java regex selenium

我得到了这个html代码

<li class="col-lg-3 col-md-3 col-sm-4 col-xs-6 item " data-product-id="6718">

我一般使用

item.findElements(By.cssSelector("li [data-product-id*=\"6718\"]"));

这将找到元素。

但是我需要一种不知道数字的查找方法?有支持它的通配符吗?


更新: 如果有任何问题,那么li[data-product-id]将起作用。但是,如果只是数字,那么它是未知的。

2 个答案:

答案 0 :(得分:0)

这可以通过一些限制来实现,但是只能使用xpath,并且如果数字每次都具有相同的长度(在本示例中为4),请尝试以下操作:

item.findElements(By.xpath("//li[translate(@data-product-id, '0123456789', 'xxxxxxxxxx')='xxxx']"));

这将与您要查找的内容相匹配。

答案 1 :(得分:0)

这将只匹配任何长度的数字。

//li[not(translate(@data-product-id, '0123456789', ''))]