带有变量符号的xpath.这是怎么做到的



我有HTML代码。

<div _ngcontent-c30="" class="message__main"><p _ngcontent-c30="">Куплю</p><ul _ngcontent-c30="" class="message__conditions  list  list--inline"><!----><li _ngcontent-c30="" class="list__item ng-star-inserted"><p _ngcontent-c30="" class="list__key">Кол-во:</p><p _ngcontent-c30="" class="list__value">1 10³ м.</p></li><li _ngcontent-c30="" class="list__item"><span _ngcontent-c30="" class="point"></span></li><!----><li _ngcontent-c30="" class="list__item ng-star-inserted"><p _ngcontent-c30="" class="list__key">Цена за ед.:</p><p _ngcontent-c30="" class="list__value">1,00&nbsp;₽</p></li><li _ngcontent-c30="" class="list__item"><span _ngcontent-c30="" class="point"></span></li><li _ngcontent-c30="" class="list__item"><p _ngcontent-c30="" class="list__key">Сумма:</p><p _ngcontent-c30="" class="list__value">1,00&nbsp;₽</p></li></ul></div>

我需要检查是否显示了正确的数字(带有小数部分(。

我认为联系定位器两次,期望它一次是正确的是错误的。我想做一些类似contains(.,"^123(.|,)123$")的事情

所以这是可能的?如果没有。如何使用其他方法

在XPath 2.0中,您可以执行

matches(., "^123(.|,)123$")

在XPath1.0中,您可以尝试

translate(., ',', '.') = "123.123"

在SO问题中,请始终说明您使用的XPath版本,因为1.0、2.0和3.1都是常用的。

搜索编号11,27ind"div.message__main"

在JavaScript中:

document.querySelector("div.message__main").innerHTML.match(/11(.|,)27/);

最新更新