如何使用Nokogiri获取XML文档的根元素名称?

mae*_*ics 6 ruby xml xpath nokogiri

使用Nokogiri,我想确定根元素的名称.

我认为做XPath查询/可以做到这一点,但显然节点名称是"文档"?

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

如何在不事先知道的情况下获取根节点名称的字符串"foo"?

Ste*_*fan 9

/* 应该管用:

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

doc.xpath('/*').first.name
#=> "foo"
Run Code Online (Sandbox Code Playgroud)

或使用Nokogiri::XML::Document#root:

doc.root.name
#=> "foo"
Run Code Online (Sandbox Code Playgroud)