我目前在Ruby中使用XmlSimple將XML轉換爲使用xml_in方法的哈希。除了生成的散列鍵全部爲小寫字母,而XML元素名稱爲混合大小寫外,所有內容都非常好。Ruby的區分大小寫的XML解析器
下面是一個例子:
hash = XmlSimple.xml_in(xml_string, { 'KeyAttr' => 'name',
'ForceArray' => false,
'NoAttr' => true,
'KeyToSymbol' => true,
'SuppressEmpty' => "" })
因此,舉例來說,此XML:
<aclEntry>
<aclEntryId>Stuff here</aclEntryId>
<principalName>Stuff here</principalName>
</aclEntry>
導致該散列:
{ :aclentryid => "Stuff Here", :principalname => "Stuff here" }
我看過了的documentation爲XmlSimple,並沒有看到任何指示它可以在文檔到哈希轉碼中保持混合大小寫的選項版爲。
是否有任何方法可以使用XmlSimple在結果散列中維護區分大小寫?如果沒有,是否有另外一種Ruby XML解析器可以生成一個散列,以保持區分大小寫?
我提交錯誤...解析器的行爲是很醜陋... –
一個最好的紅寶石的XML解析器是引入nokogiri,看看這裏http://nokogiri.org/ – Senjai
它尚未更新一段時間,但[Crack](https://github.com/jnunemaker/crack)是一個不錯的簡單的XML和JSON解析器,可以保留大小寫。 –