1 2 3 4 5 6 7 8 9 10 11 12 13 14
require 'yaml' mappath = ARGV[0] outputpath = ARGV[1] panels = [] File.readlines(mappath).each do |line| line.match(/node name=\"(.*)\" parent=\"Panels\/(.*)\" instance/) do |m| panels << {"id" => m[2] + "/" + m[1]} end end File.write(outputpath, panels.to_yaml)