0

たとえば、ハッシュから同じ始まりを持つすべてのキーを削除したい

myhash[:x_key_a]
myhash[:x_key_b]
myhash[:x_key_c]

xfromで始まるすべてのキーを削除したいのですがmyhash

すべてのキーを調べる以外に、これを行うためのより良い方法はありますか?

4

2 に答える 2

0
myhash = {}

myhash[:x_key_a] = 1
myhash[:x_key_b] = 2
myhash[:y_key_c] = 3

p myhash.delete_if{ |key, _| key.match(/^x/) }
# => {:y_key_c=>3}
于 2013-08-01T09:22:42.577 に答える