的陣列我有哈希以下數組和我想使用transform_keys使用正則表達式來剝離每個鍵的開頭:transform_keys用於散列
array_of_hashes = [{"a_0_abc"=>"1",
"a_0_def"=>"1",
"a_0_hij"=>"1",},
{"a_1_abc」=>"2",
"a_1_def"=>"2",
"a_1_hij"=>"2"}]
,我想以下:
transformed_hash_keys = [{"abc"=>"1",
"def"=>"1",
"hij"=>"1",},
{"abc"=>"2",
"def"=>"2",
"hij"=>"2"}]
我有以下的方法,但它會導致array_of_hashes代替transformed_hash_keys的:
def strip
s = array_of_hashes.each { |hash| hash.transform_keys { |key| key.sub(/^a_(\d+)_/, '') } }
end
有人能告訴我在這種方法中我做錯了什麼嗎?
謝謝!地圖將最適合我的目的 – Munchies