2014-04-01 49 views
0

我正在寻找Ruby 内存中键值存储,该值允许我为与正则表达式匹配的键选择所有值。获取匹配正则表达式的键的所有值

我看了网上,但我找不到我所需要的东西。

有什么建议吗?

感谢

更新

审查我的问题后,我发现我是不是可能很清楚,所以,也因为你们问的人知道了,这里的例子。 我目前在我的应用程序中使用Daybreak,所以我用它作为示例,但它不起作用。

require 'daybreak' 

    db = Daybreak::DB.new "example.db" 
    db['prefix_foo'] = 'first' 
    db['prefix_bar'] = 'second' 
    db['doo'] = 'third' 

    db.magic('prefix') #=> [ db['prefix_foo'], db['prefix_bar']] 
Or 
    db.magic('prefix') #=> ['prefix_foo', 'prefix_bar'] 

我宁可不要使用“裸”散列。

再次感谢您的帮助。

+0

请举例,我想,我知道答案。但我不确定,如果这是你正在寻找或不需要的答案.. –

+1

你可以做hash.select {| k,v | k [regex]} .values –

+0

我的歉意,不知道我的问题违反了SO规则。请删除它。感谢上帝你的理解。 – macsig

回答

0
str = {:make => "bmw", :year => "2003"} 
str.select{|k,v| k =~ /ak/} 
#=> {:make=>"bmw"} 

str.select{|k,v| k =~ /ak/}.values #=> get only values 
#=> ["bmw"] 
相关问题