Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 如何访问字符串中的哈希_Ruby - Fatal编程技术网

Ruby 如何访问字符串中的哈希

Ruby 如何访问字符串中的哈希,ruby,Ruby,我正在读一个CSV文件。它包含一列,如下所示: {"doctype"=>"birthrecord", "records"=>[{"pagenum"=>"5", "recordId"=>"7", "tagGroups"=>[{"data"=>{"first"=>"given_name", "given_name"=>"Severiano ", "surname"=>"Bustamante"}}]}]} 将输出此列的标题。当我执行第[“Outp

我正在读一个CSV文件。它包含一列,如下所示:

{"doctype"=>"birthrecord", "records"=>[{"pagenum"=>"5", "recordId"=>"7", "tagGroups"=>[{"data"=>{"first"=>"given_name", "given_name"=>"Severiano ", "surname"=>"Bustamante"}}]}]}
将输出此列的标题。当我执行第[“Output”]行时,它返回散列的sting作为

"{"doctype"=>"birthrecord", "records"=>[{"pagenum"=>"5", "recordId"=>"7", "tagGroups"=>[{"data"=>{"first"=>"given_name", "given_name"=>"Severiano ", "surname"=>"Bustamante"}}]}]}"
如何像普通散列一样访问散列


有人能帮我吗。

数据集看起来几乎像
JSON
,除了
=>
被用来代替
,因此替换它们,您现在可以像
JSON
对象一样充分解析它

JSON.parse('{"doctype"=>"birthrecord", "records"=>[{"pagenum"=>"5", "recordId"=>"7", "tagGroups"=>[{"data"=>{"first"=>"given_name", "given_name"=>"Severiano ", "surname"=>"Bustamante"}}]}]}'.gsub("=>", ":"))["records"][0]["tagGroups"][0]["data"]
#=> {"first"=>"given_name", "given_name"=>"Severiano ", "surname"=>"Bustamante"}

我知道如果我说
eval
,我会被石头砸死(理由很充分),但是。。。你有多绝望?你对消息来源有多信任?可能是@JanDvorak的复制品,在那里使用eval正确吗?它可以工作,但是…在这个线程中似乎有一些可行的选项:我们需要查看您的代码和输入数据的示例。“列”不是CSV格式,而是一个哈希定义。OP需要澄清输入并显示显示的数据来自何处。它不是CSV格式的记录或字段。