Я использую Nokogiri для синтаксического анализа большого XML-файла. Скажем, у меня есть следующая структура:
<menagerie>
<penguin>Pablo</penguin>
<penguin>Mortimer</penguin>
<bull>Ferdinand</bull>
<aardvark>James Cornelius Madison Humphrey Zophar Handlebrush III</aardvark>
</menagerie>
Я могу посчитать не-пингвинов вот так:
xml.xpath('//menagerie//*[not(penguin)]').length // 2
Но как мне получить список тегов, как этот? (Точный формат не важен; я просто хочу визуально сканировать не пингвинов.)
bull
aardvark
Это дало мне список, который я хотел - спасибо Oded и TMN и delnan !
xml.xpath('//menageries/*[not(penguin)]').each do |node|
puts node.name()
end