我有以下YAML:
- name: List of monkeys
- author: Nicolas Raoul
- version: 1
- monkey: Chee-Chee
- monkey: Curious George
- monkey: Mojo
如何在Ruby中获取猴子数组?元数据参数(名称,作者,...)的数量是可变的。
它将返回类似[Chee-Chee, Curious George, Mojo]
注意:我不想创建一个包含所有猴子的monkeys
节点作为子项,因为有很多猴子,我想保持文件非常简单。 < / p>
答案 0 :(得分:1)
你的YAML
看起来有点疯狂:每一行都是hash
,包含一个元素。尽管如此,如果你坚持使用它,这样的东西会给你一系列猴子名字:
require 'yaml'
data = YAML.load(DATA.read)
p data.map { |row| row['monkey'] }.compact
__END__
- name: List of monkeys
- author: Nicolas Raoul
- version: 1
- monkey: Chee-Chee
- monkey: Curious George
- monkey: Mojo
显然你可以从任何地方加载YAML
,它不必在你的DATA块中。