如何在Yaml中解析这个?

假设我有这个例子:

Example: number: cuarenta cuarenta y uno cuarenta y dos cuarenta y tres cuarenta y cuatro cuarenta y cinco cuarenta y seis cuarenta y siete cuarenta y ocho cuarenta y nueve 

我想解析这个问题,以便将每个数字组合在一起,就像“cuaranta y nueve”一样。 我无法想象如何做到这一点,因为在YAML中,你变成了与“名词”相关联的字符串。

我的yaml解析器看起来像这样:

  File.open(Rails.root + 'lib/words/yamlicious.yml', 'r') do |file| YAML::load(file).each do |topic, word_types| temp_topic = Topic.create! name: topic temp_words = word_types.map{|type, words| words.split(' ').map {|word| Word.create type: type, word: word, topics: [temp_topic] } } temp_topic.words << temp_words end end 

注意split部分会破坏那个,因为那时我会根据我的例子创建一个单词“cuarenta”,“y”和“uno”三个单词。

要保留换行符,必须使用管道符 :

 Example: number: | cuarenta cuarenta y uno cuarenta y dos … 

现在你可以split("\n")