fork(6) download
  1. def f h
  2. Hash[h.map {|k,v| v.class == Array ? [k, v.map{|r| f r}.to_a] : [k.downcase, v]}]
  3. end
  4.  
  5. p f({
  6. "MemberId"=>"ABC0001",
  7. "MemberName"=>"Alan",
  8. "details"=>[
  9. {"LineNumber"=>"4.1", "Item"=>"A0001", "Description"=>"Apple"},
  10. {"LineNumber"=>"5.1", "Item"=>"A0002"},
  11. {"LineNumber"=>"6.1", "Item"=>"Orange"}
  12. ]
  13. })
Success #stdin #stdout 0.01s 7460KB
stdin
Standard input is empty
stdout
{"memberid"=>"ABC0001", "membername"=>"Alan", "details"=>[{"linenumber"=>"4.1", "item"=>"A0001", "description"=>"Apple"}, {"linenumber"=>"5.1", "item"=>"A0002"}, {"linenumber"=>"6.1", "item"=>"Orange"}]}