どうも、ちょげ(@chogetarou)です。
ハッシュ(Hash)のキー(key)を削除する方法を紹介します。
方法

ハッシュ(Hash)のキー(key)を削除する方法は、2つあります。
deleteメソッド
1つは、deleteメソッドを使う方法です。
まず、ハッシュからdeleteメソッドを呼び出します。
そして、deleteメソッドの引数に削除するキー(key)を指定します。
#hash=対象のハッシュ, key=削除するキー
hash.delete(key)
上記のdeleteメソッドは、呼び出したハッシュ(Hash)から引数のキー(key)を削除します。
使用例
numbers = {
"one" => 1,
"two" => 2,
"three" => 3,
"four" => 4,
"five" => 5,
}
numbers.delete("one")
numbers.delete("three")
puts numbers
出力:
{"two"=>2, "four"=>4, "five"=>5}
delete_ifメソッド
もう1つは、delete_ifメソッドを使う方法です。
まず、ハッシュからdelete_ifメソッドを呼び出します。
delete_ifメソッドに引数を2つ持つブロックを渡します。
delete_ifメソッドのブロックで、削除するキーの条件式を返します。
ブロック内では、第1引数でキーを取得します。
#hash=対象のハッシュ, condition=条件式
hash.delete_if { |key, value| condition }
上記のdelete_ifメソッドは、呼び出したハッシュ(Hash)から条件式で「true」を返したキー(key)を削除します。
使用例
numbers = {
"one" => 1,
"two" => 2,
"three" => 3,
"four" => 4,
"five" => 5,
}
numbers.delete_if { |key, value| key.length > 3 }
puts numbers
出力:
{"one"=>1, "two"=>2}
まとめ
ハッシュ(Hash)のキー(key)を削除する方法は、2つあります。
- deleteメソッドを使う方法
hash.delete(key)
- delete_ifメソッドを使う方法
hash.delete_if { |key, value| condition }
コメント