标签: ruby activesupport
所以我有一个哈希,我想基于一个数组进行过滤:
h = {a: 'test1', b: 'test2', c: 'test3'} a = [:a, :poo1, :poo2]
我的第一个想法是尝试:
h.slice(a)
但是当我希望它会返回{}时,它会返回{:a=>"test1"}。我似乎无法找到一种基于符号数组过滤哈希的简单方法。想法?
{}
{:a=>"test1"}
答案 0 :(得分:1)
您可以使用splat运算符解决此问题:
h.slice(*a)
这将产生
> {:a=>"test1"}
有关星号的说明,请参阅this链接。