将hash / conver hash更改为string:value格式

时间:2015-06-20 19:48:12

标签: ruby-on-rails ruby string hash

如何在ruby中更改/转换1哈希到{"-6"=>254,"-8"=>288}字符串?

2 个答案:

答案 0 :(得分:1)

{"-6"=>254,"-8"=>288}.to_s.gsub('=>',':') #=> "{\"-6\":254, \"-8\":288}"

注意:

"{\"-6\":254, \"-8\":288}" == '{"-6":254, "-8":288}' #=> true

答案 1 :(得分:0)

以下代码会将给定的哈希值转换为类似于问题中指定格式的字符串:

hash = {"-6"=>254,"-8"=>288}
hash.map {|k, v| "#{k}: #{v}"}.join(", ")

上面的代码会输出:

=> "-6: 254, -8: 288"

注意:您不能在字符串中包含整数,如预期输出中指定的那样 - "-6:254, "-8":288 - 它们只是该字符串中的字符,表示这些整数的数字。

希望这有帮助!