我有以下XML,我试图根据名称子节点获取唯一节点。如何使用Ruby选择唯一的XML节点?
原始XML:
<products>
<product>
<name>White Socks</name>
<price>2.00</price>
</product>
<product>
<name>White Socks/name>
<price>2.00</price>
</product>
<product>
<name>Blue Socks</name>
<price>3.00</price>
</product>
</products>
我试图让:
<products>
<product>
<name>White Socks</name>
<price>2.00</price>
</product>
<product>
<name>Blue Socks</name>
<price>3.00</price>
</product>
</products>
我已经试过各种事情,但不值得在这里上市,我得到的最接近使用XPath但那是只是返回了下面的名字。但是,这是错误的,因为我需要上面的完整XML,而不仅仅是节点值。
White Socks
Blue Socks
我使用Ruby和试图遍历像这样的节点:
@doc.xpath("//product").each do |node|
显然,上述目前得到所有产品的节点,而我希望所有的独特产品节点(使用子节点“名称”作为唯一标识符)
好问题, +1。查看我的答案,获得完整,简短且容易的XSLT 1.0解决方案。还提供了广泛的解释。 :) – 2011-02-16 17:16:18