簡體   English   中英

如何從XML文檔中提取Ruby中的XML標簽ID及其值

[英]How to extract an XML tag ID and its value in Ruby from an XML document

考慮一個XML文檔

<string id = "id1" ><p> Text1 </p></string>
<string id = "id2" > Text2 </string>

我想用ruby解析此文檔,並進行{id:"Text1", "id2":Text2}這樣的哈希

我嘗試了nokogiri和REXML教程,但沒有太大用處。 有人可以建議我這樣做的方法。

在單個xpath查詢中不可能獲得期望的結果。 您可以選擇並遍歷所有字符串節點並提取信息,如下所示:

require 'nokogiri'

doc = Nokogiri::XML(File.open("example.xml"));

result = {}
doc.xpath("//string").each do |node|
    id = node.get_attribute "id"
    text = node.inner_text.strip!
    result[id] = text
end

puts result

輸出:

{"id1"=>"Text1", "id2"=>"Text2"}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM