delete_if passes all pairs into the block, so you can delete based on a key or a value.
# Here is an example of a deletion based on value:
myHash = { 1 => "One", 2 => "Two", 3 => "Three", 4 => "Four", 5 => "Five" }
myHash.delete_if { |key, value| value == "Two" } # => {5=>"Five", 1=>"One", 3=>"Three", 4=>"Four"}
Related examples in the same category