我的元素看起来有两种。有人喜欢这样:
<p class="pricing ats-product-price">$3.97</p>
有些人喜欢这样:
<p class="pricing ats-product-price"><em class="old_price">$8.97</em>$3.97</p>
如何从元素中可靠地选择最后一个数字(在这种情况下为$3.97
)并忽略第一个?
我正在使用的当前代码是:
$prices = $xpath->query('//p[@class="pricing ats-product-price"]');
但是在第二种风格的情况下,它将返回$8.973.97
。我只想要$3.97
。
答案 0 :(得分:2)
在这两种情况下,$3.97
都位于p
元素的文本节点子项中。
因此这个XPath,
//p[@class="pricing ats-product-price"]/text()
将选择
$3.97
两种情况。