【rails6】xmlの複数ある要素を配列でとってきたい
xmlの複数ある要素を配列でとってきたい。
array = [] (1.. doc.get_elements('response/a/b/c/d').size).each do |i| array.push(doc.elements["response/a/b/c[#{i}]/d"].text) end
ってやったら動いた。
試したこと
sizeでfor回さなくてもいいはずなんだけどなんか動かなかった。
array = [] doc.elements.each('root/a/b') do |element| array.push(element.text) end
arrayには [<b>...<b>,<b>...<b>,<b>...<b>]
って入った(rails consoleで確認)
uxmilk.jp から引用
b以下のelementが得られているのでさらにelements['d']とかを行ってdまで掘る必要がありそう?するとtextが得られそう
といただいたので後日検証