2010年3月13日土曜日

Ruby:XML:nokogiri(属性を取り出す)

次のxmlファイル’abc.xml'をnokogiriで読んでみました。



ここからnokogiriプログラムです。

require 'nokogiri'

puts 'Nokogiri'
f=File.open('abc.xml')
doc=Nokogiri::XML(f)
puts doc.xpath("//d[@id='0']")    <= 属性id=0のものを表示
puts doc.xpath("//d[@type='AB']") <= 属性type='AB'のものを表示

doc.xpath("//d[@type='AB']").each do |d|  <= 属性type='AB'のものを選んで、それごとに表示
  puts d.xpath('descr').text
end

出力は

となります。XPathのパス指定はこの辺に書いてあるようです。

0 件のコメント: