How to recursively remove all keys with empty values from (YAML) hash?

前端 未结 6 1971
没有蜡笔的小新
没有蜡笔的小新 2021-01-04 22:21

I have been trying to get rid of all hash keys in my YAML file that have empty (blank) values or empty hashes as values.

This earlier post helped me to get it almost

6条回答
  •  Happy的楠姐
    2021-01-04 22:55

    class Hash
      def delete_blank
        delete_if{|k, v| v.empty? or v.instance_of?(Hash) && v.delete_blank.empty?}
      end
    end
    
    p hash.delete_blank
    # => {"y"=>"content"}
    

提交回复
热议问题