【发布时间】:2018-10-06 02:48:11
【问题描述】:
非常相似的问题:Using Ruby, Reading a file, containing name/value pairs into a hash
文件:
server1, jim, 22
server2, bob, 44
试过这个正则表达式:
Hash[*File.read('file.cfg').split(/[, \n]+/)]
但我得到:
odd number of arguments for Hash (ArgumentError)
我试试这个:http://rubular.com/r/BE6ZG2nTMw
解决这个问题的方法是什么?问题是哈希初始化的方式还是我的正则表达式?
【问题讨论】:
-
它是 CSV 文件吗?它有标题吗?
-
不是 CSV,只是一个纯文本文件。
my_hash = Hash[*File.read('file.cfg').split(/[, \n]+/)] -
我怀疑你用你的代码得到的结果是你确实想要得到的结果。
-
您希望哈希看起来像什么?
-
好吧,@Anthony 一开始就假设我需要一个类似于
{"server1"=>["jim", "22"], "server2"=>["bob","22"]}的散列,但我不太确定这里的数组会更简单。