我有一个方法,给出了像这样的特定选项哈希
def send_params(options = {})
#Create string of some values in the hash.
end
我想创建一个字符串,其中一些值在哈希中。特别是我正在寻找键:key1,:key2,:key3,:key4来创建一个具有相应值的字符串。所以,如果我的哈希是这样的:
{:key1 => 'value1', :key2 => 'value2', :key3 => 'value3', :key4 => 'value4', , :key5 => 'value5'}
我希望能够创建一个字符串,如:
'value1,value2|value3,value4'
将剩余的哈希值设为:
{:key5 => 'value5'}
因此,应该从散列中删除找到的值。这样做的好方法是什么?
答案 0 :(得分:2)
Hash#delete
可能正是您要找的。
它将从散列中删除键/值对并返回值。
示例:
h = {
:key1 => 'value1',
:key2 => 'value2',
:key3 => 'value3',
:key4 => 'value4',
:key5 => 'value5'
}
str = "#{h.delete :key1},#{h.delete :key2}|#{h.delete :key3},#{h.delete :key4}"
p str # => "value1,value2|value3,value4"
p h # => {:key5=>"value5"}