値。現在、私はそれを変換するために次のことをやっている:配列とハッシュを反転させると、私はこのような私のハッシュを書いているのオーサリングを容易にするため
h = Hash[*{
:key1: [:val1, :val2, :val3],
:key2: [:val4, :val5, :val6]
}.map {|key, vals| vals.map {|val| [val, key]}}.flatten]
を私が欲しいものを私に与える:
{ :val1 => :key1, :val2 => key1, :val3 => key1, :val4 => key2, :val5 => :key2, :val6 => :key2 }
しかし、同じ目標を達成するための簡単な方法がありますか?
* + 1 *はるかに良い.. :) –
私はそれが他と比べて可読で効率的な解決策だと思います –
ニース。ありがとうございました。 – Johnsyweb