【发布时间】:2015-09-06 14:54:54
【问题描述】:
如何在 ruby 中将 {"-6"=>254,"-8"=>288} 哈希更改/转换为 "-6":254,"-8":288 字符串?
【问题讨论】:
-
您应该将“on”更改为“to”并将字符串括在单引号中(或
%["-6":254,"-8":288]等)。
标签: ruby-on-rails ruby string hash
如何在 ruby 中将 {"-6"=>254,"-8"=>288} 哈希更改/转换为 "-6":254,"-8":288 字符串?
【问题讨论】:
%["-6":254,"-8":288]等)。
标签: ruby-on-rails ruby string hash
{"-6"=>254,"-8"=>288}.to_s.gsub('=>',':') #=> "{\"-6\":254, \"-8\":288}"
注意:
"{\"-6\":254, \"-8\":288}" == '{"-6":254, "-8":288}' #=> true
【讨论】:
以下代码会将给定的哈希转换为类似于您问题中指定格式的字符串:
hash = {"-6"=>254,"-8"=>288}
hash.map {|k, v| "#{k}: #{v}"}.join(", ")
上面的代码会输出:
=> "-6: 254, -8: 288"
注意:您不能在字符串中包含整数,正如您预期的输出 -"-6:254, "-8":288 中所指定的那样 - 它们只是该字符串中代表这些整数的数字的字符。 p>
希望这会有所帮助!
【讨论】: