Ruby 4.0 リファレンスマニュアル

instance method Hash#transform_keys

transform_keys {|key| ... } -> HashRuby 2.5.0 から[permalink][rdoc][edit]
transform_keys(hash) -> Hash
transform_keys -> Enumerator
() → Enumerator[K, Hash[untyped, V]]
[A] () { (K) → A } → Hash[A, V]

すべてのキーに対してブロックを呼び出した結果で置き換えたハッシュを返します。値は変化しません。

[PARAM] hash:
置き換え前のキーから置き換え後のキーへのハッシュを指定します。
例
h = { a: 1, b: 2, c: 3 }
p h.transform_keys {|k| k.to_s } # => {"a" => 1, "b" => 2, "c" => 3}
p h.transform_keys(a: "a", d: "d") # => {"a" => 1, b: 2, c: 3}
p h.transform_keys(&:to_s)       # => {"a" => 1, "b" => 2, "c" => 3}
p h.transform_keys.with_index {|k, i| "#{k}.#{i}" }
                                 # => {"a.0" => 1, "b.1" => 2, "c.2" => 3}

[SEE_ALSO] Hash#transform_keys!

[SEE_ALSO] Hash#transform_values

[SEE_ALSO] Hash#transform_values!