0
我很努力地找出XPath和REXML,我尝试的每一件事情,甚至从书本上复制,都返回nil。我试图做数据的最简单可行的输出...我的文件看起来像如何使用XML获取一个非常简单的元素?
<profile>
<userid>3002</userid>
</profile>
我想3002
出来。我该怎么做?
我很努力地找出XPath和REXML,我尝试的每一件事情,甚至从书本上复制,都返回nil。我试图做数据的最简单可行的输出...我的文件看起来像如何使用XML获取一个非常简单的元素?
<profile>
<userid>3002</userid>
</profile>
我想3002
出来。我该怎么做?
如果您发布代码会更好。 好,刚才给你看一个方向,试试这个:
require 'rexml/document'
xml = '<profile>
<userid>3002</userid>
</profile>'
doc = REXML::Document.new xml
item = REXML::XPath.first(doc, '//profile/userid').text
p item
#=> 3002
它发现里面profile
第一userid
元素,并采取它的文本。
您也可以使用优秀的Nokogiri
宝石。这里是我如何编码 -
require 'nokogiri'
xml = '<profile>
<userid>3002</userid>
</profile>'
doc = Nokogiri::XML.parse xml
p doc.at('userid').text
# => "3002"
谢谢你,这真的很有帮助! – GreenTriangle 2014-09-26 05:27:15