From: Yui NARUSE Date: 2012-03-06T17:55:08+09:00 Subject: [ruby-dev:45310] [ruby-trunk - Feature #6118][Open] Hash#keys_of(values), returns related keys of given values Issue #6118 has been reported by Yui NARUSE. ---------------------------------------- Feature #6118: Hash#keys_of(values), returns related keys of given values https://bugs.ruby-lang.org/issues/6118 Author: Yui NARUSE Status: Open Priority: Normal Assignee: Category: Target version: Hash#key(value) の複数版がほしいです。 {a: 1, b: 2, c: 3, d: 1}.key(1) => :a というメソッドはあるのですが、 {a: 1, b: 2, c: 3, d: 1}.keys_of(1) => [:a, :d] というメソッドは現状ありません。 Ruby での実装例は以下のような感じになります。 どうでしょうか。 class Hash def keys_of(*a) each_with_object([]) {|(k, v), r| r << k if a.include? v} end end -- http://bugs.ruby-lang.org/