ruby - 如果值存在则显示散列的内容

标签 ruby hash

我有一个散列:

req = {
  "count" => 50100,
  "results" => [
    {"listing_id" => 615929315, "state" => "active", "user_id" => 140604756, "category_id" => 69150367}, 
    {"listing_id" => 615929311, "state" => "active", "user_id" => 152528025, "category_id" => 69150367}
  ]
}

如果存在特定的 user_id,我想查找并显示整个内部散列。我能找到它:

req["results"][0].select{|key, value| value == 152528025}
# => {"user_id" => 152528025}

然后如何显示整个(嵌套的)散列?

{"listing_id" => 615929311, "state" => "active", "user_id" => 152528025, "category_id" => 69150367}

最佳答案

req["results"].select{|x| x["user_id"] == 152528025}

关于ruby - 如果值存在则显示散列的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50461652/

相关文章:

performance - 使用链式与开放式寻址的哈希表中的缓存性能

ruby - 删除字符串的最后 n 个字符(在 Ruby 中)的最佳方法是什么?

image - 在 Ubuntu 中基于图像 (PNG) 的内容创建一个唯一的哈希值?

ruby-on-rails - 亚马逊 s3 - ruby 。获取刚刚上传的资源的URL

ruby-on-rails - 我们是否需要在用户注销后删除 session 变量?

algorithm - 从哈希到排列

arrays - Perl 如何访问作为数组元素的散列,该数组是另一个散列的值?

perl - Hash 可以有重复的键或值吗

ruby - 用 capybara 提取url

ruby - 从 Rack 应用程序提供非公共(public)二进制文件