Java 如何在没有所有子节点文本的情况下获取direct元素的文本 $252.00 趋向于 $259.85
也。 我想Java 如何在没有所有子节点文本的情况下获取direct元素的文本 $252.00 趋向于 $259.85,java,regex,selenium-webdriver,testng,Java,Regex,Selenium Webdriver,Testng,也。 我想getText这样它就会返回“$252.00” 目前,getText返回“$252.00,趋势为$259.85”。 它从direct元素中获取文本,还包括子节点的文本 我目前正在使用findElements(By.cssSelector(“li.lvprice.prc”) 我查看了WebElement.getText()文档。它还可以抓取所有子节点文本 我可以使用正则表达式从字符串中获取252.00,但我不确定这是最专业的方法 有什么建议吗?试试这个: <li class="l
getText
这样它就会返回“$252.00”
目前,getText
返回“$252.00,趋势为$259.85”。
它从direct元素中获取文本,还包括子节点的文本
我目前正在使用findElements(By.cssSelector(“li.lvprice.prc”)
我查看了WebElement.getText()
文档。它还可以抓取所有子节点文本
我可以使用正则表达式从字符串中获取252.00,但我不确定这是最专业的方法
有什么建议吗?试试这个:
<li class="lvprice prc">
<span class="bold">
$252.00
<div class="medprc">
<span class="prcVS">Trending at</span>
<span class="median">
$259.85
.*(\$\d+。?\d+)
您可以获取整个文本,然后删除子文本
<li class="lvprice prc">
<span class="bold">.*?(\$\d+.?\d+)
String allText = driver.findElement(By.cssSelector("li.lvprice.prc")).getText();
String childrenText = driver.findElement(By.cssSelector("div.medprc")).getText();
String parentText = allText.replace(childrenText, "");