【发布时间】:2013-05-22 19:05:07
【问题描述】:
我需要我的 string: "---\n- aaaadddhh ddddggg\n- bbbdddddf ff ddd\n- cccf\n" 在 Ruby 中转换为 array
这就是我想要的:
["aaaadddhh ddddggg", "bbbdddddf ff ddd", "cccf"]
【问题讨论】:
标签: ruby-on-rails ruby arrays yaml
我需要我的 string: "---\n- aaaadddhh ddddggg\n- bbbdddddf ff ddd\n- cccf\n" 在 Ruby 中转换为 array
这就是我想要的:
["aaaadddhh ddddggg", "bbbdddddf ff ddd", "cccf"]
【问题讨论】:
标签: ruby-on-rails ruby arrays yaml
那是YAML。使用YAML.load(str) 将其从字符串解组为对象。
> require 'yaml'
=> true
> YAML.load "---\n- aaaadddhh ddddggg\n- bbbdddddf ff ddd\n- cccf\n"
=> ["aaaadddhh ddddggg", "bbbdddddf ff ddd", "cccf"]
请注意,解组任意 YAML 存在安全风险,因此请确保您传入其中的源是可信的。
【讨论】:
YAML.load 电话。如果您需要能够接受要加载的任意序列化字符串,我建议您改用 JSON。您可以尝试使用safe_yaml gem,但我还没有测试过它,也无法亲自说出它的可靠性。