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

instance method Hash#transform_keys!

transform_keys! {|key| ... } -> selfRuby 2.5.0 から[permalink][rdoc][edit]
transform_keys!(hash) -> self
transform_keys! -> Enumerator

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

[PARAM] hash:
置き換え前のキーから置き換え後のキーへのハッシュを指定します。
[RETURN]
transform_keys! は常に self を返します。ブロックが与えられなかった場合は、Enumerator オブジェクトを返します。
例
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!(&:to_sym)     # => {a: 1, b: 2, c: 3}
p h.transform_keys!(a: "a", d: "d") # => {"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!