Как преобразовать строку в хэш ruby
Ответы
Nikolai Gagarinov
23 ноября 2021
Строку можно перевести в хеш в зависимости от того, где эта строка используется
К примеру JSON
require 'json'
pp JSON.parse '{ "squadName": "Super hero squad", "homeTown": "Metro City", "formed": 2016, "secretBase": "Super tower", "active": true }'
# => {
# => "squadName"=>"Super hero squad",
# => "homeTown"=>"Metro City",
# => "formed"=>2016,
# => "secretBase"=>"Super tower",
# => "active"=>true
# => }
Строка запроса (query_params)
require 'cgi'
pp CGI::parse("foo=bar&bar=foo&hello=hi")
# => {"foo"=>["bar"], "bar"=>["foo"], "hello"=>["hi"]}
Когда хеш в виде строки
hash_as_string = "{\"0\"=>{\"answer\"=>\"1\", \"value\"=>\"No\"}, \"1\"=>{\"answer\"=>\"2\", \"value\"=>\"Yes\"}, \"2\"=>{\"answer\"=>\"3\", \"value\"=>\"No\"}, \"3\"=>{\"answer\"=>\"4\", \"value\"=>\"1\"}, \"4\"=>{\"value\"=>\"2\"}, \"5\"=>{\"value\"=>\"3\"}, \"6\"=>{\"value\"=>\"4\"}}"
JSON.parse hash_as_string.gsub('=>', ':')
1
0
user-6d38ec1913e63007
19 апреля 2023
спасибо, полезная заметка
0
0