我有一个元素结构,由我用nokogiri解析的项目节点组成:
@xml.css('item').each do |item|
# do something
end
现在项目有一个部分,看起来像9每个项目都有这个元素,其ID如下所示:
<customfield id="customfield_10004" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
<customfieldname>Yada yada</customfieldname>
<customfieldvalues>
<customfieldvalue>8.0</customfieldvalue>
</customfieldvalues>
</customfield>
我想从中分析8.0的值。在另一个SO answer中,我发现您可以使用这样的东西(对于html):
item.xpath("//customfield[@id='customfield_10004']").css('customfieldvalue')
不幸的是,这似乎以相同的顺序返回一个包含所有值的字符串,而不是我正在查看的项节点的特定值。
有人知道如何解析customfieldvalue节点中的浮点值吗?
最佳答案
您的问题是,您在xpath查询的开头使用了//
,它告诉xpath引擎从文档的根开始查找匹配的所有内容,而不管您的当前节点是什么。尝试改用./
。