多个值时按值返回键

时间:2015-02-05 02:07:22

标签: ruby hash

这是一个哈希:

cities = {
  OR: ['Bend','Portland'],
  CA: ['Los Angeles', 'Sandiego'],
  WA: ['Seattle', 'Vancouver'],
}

我希望通过值的元素返回一个键。当我按城市名称(值中的元素)搜索时,我想返回州的缩写(键)。

以下仅适用于value是散列值的情况,而不是当它是值的元素时:

hash.key(value)

1 个答案:

答案 0 :(得分:2)

您可以使用select找到密钥:

hash.select { |k, v| v.include? "Seattle" }.keys.first