0
RubyMineでXML処理を学ぼうとしています.nokogiri.comのチュートリアルと、stackoverflow.comのフォーラムで検索した内容に基づいています。RubyMineでXMLを処理する
私のコードは次のとおりです。
Then /^I process an XML file:(.*?).$/ do |arg1|
xml_str = Nokogiri::XML('<root>
<sitcoms>
<sitcom>
<name>Married with Children</name>
<characters>
<character>Al Bundy</character>
<character>Bud Bundy</character>
<character>Marcy Darcy</character>
</characters>
</sitcom>
<sitcom>
<name>Perfect Strangers</name>
<characters>
<character>Larry Appleton</character>
<character>Balki Bartokomous</character>
</characters>
</sitcom>
</sitcoms>
<dramas>
<drama>
<name>The A-Team</name>
<characters>
<character>John "Hannibal" Smith</character>
<character>Templeton "Face" Peck</character>
<character>"B.A." Baracus</character>
<character>"Howling Mad" Murdock</character>
</characters>
</drama>
</dramas>
</root>
')
doc = Nokogiri::XML(xml_str)
sleep 2
puts "\ndoc class is " + doc.class.to_s
sleep 2
thing = doc.xpath("//character")
sleep 2
puts "\nthing class is " + thing.class.to_s
sleep 2
stop_value = thing.length
idx = 0
puts "\nthing length is #{stop_value}"
if thing.empty?
puts "\nthing is empty"
else
pits "\nthing is NOT empty"
end
while idx < stop_value
puts "\n" + thing[idx].to_s
idx += 1
end
「ドキュメント」のためのクラスが正しいのですが、「もの」のためのクラスがnilです。
私はRubyMine 8.0.3、Ruby 2.2.1、およびAppium 1.5.3を実行しています。
ありがとうございます。
ありがとう、Jordan !!いったん私がnokogiriへの2回目の呼び出しを取り出したら、私のコードはうまくいった!! –
喜んで助けてください!私の答えがあなたの問題を解決したら、それを合格とマークしてください。 –