Ruby 1.9.3 リファレンスマニュアル > ライブラリ一覧 > syckライブラリ > Syckモジュール > parse_documents
parse_documents(io) {|obj| ...} -> nil[permalink][rdoc]与えられた io から YAML フォーマットの文書をパースし Syck::Nodeオブジェクトに変換し、 生成したオブジェクトを引数としてブロックを評価していきます。
require 'syck'
require 'yaml'
YAML.parse_documents(DATA){|doc|
doc.search('/dog//name').each {|node|
p node
}
p "-->"
}
__END__
cat:
- name: taro
age: 7
- name: jiro
age: 23
---
dog:
shiba:
- name: goro
age: 3
- name: rokuro
age: 1
# end of sample
#=> "-->"
#=> "/dog/shiba/0/name"
#=> "/dog/shiba/1/name"
#=> "-->"
[注意] ブロックを指定しないと NoMethodError が発生する事に注意してください。