【问题标题】:Extracting a number from an XML node从 XML 节点中提取数字
【发布时间】:2016-06-12 00:46:54
【问题描述】:
到目前为止,我对 XPath 所做的最好的事情就是提取以下节点:
<li class="List-guests">
<span class="icon guests"/>
3
</li>
我实际上只需要提取数字 3。有没有办法在 XPath 中做到这一点?如果可以避免的话,我真的不想开始使用一些复杂的正则表达式。
【问题讨论】:
标签:
html
xml
xpath
web-scraping
【解决方案2】:
class="icon guests"span 后面的规范化文本,
normalize-space(//span[@class="icon guests"]/following-sibling::text())
以及class='List-guests'span的规范化文本,
normalize-space(//li[@class='List-guests'])
根据要求,您显示的 XML 将是 3。
注意:这是字符串3。如果您确实需要数字 3,则可以将上述任一 XPath 表达式包装在 number() 中。