2014-04-23 37 views
5

Nokogiri'yi kullanarak, kök öğesinin adını belirlemek istiyorum.Nokogiri'yi kullanarak bir XML belgesinin kök öğesi adını nasıl alabilirim?

/ için bir XPath sorgusu yapmanın hile yapmasını bekledim ama görünüşe göre bu düğüm adı "belge" dir?

require 'nokogiri' 
doc = Nokogiri::XML('<foo>Hello</foo>') 
doc.xpath('/').first.name # => "document" 
doc.xpath('/foo').first.name # => "foo" 

Kök düğüm adı için "foo" dizesini önceden bilmeden nasıl alabilirim?

cevap

8

/* çalışması gerekir:

require 'nokogiri' 
doc = Nokogiri::XML('<foo>Hello</foo>') 

doc.xpath('/*').first.name 
#=> "foo" 

veya Nokogiri::XML::Document#root kullanarak:

doc.root.name 
#=> "foo"