gsub (ruby)
#!/usr/bin/env ruby
class String
def mgsub!(key_value_pairs=[].freeze)
regexp_fragments = key_value_pairs.collect{|k,v| k}
gsub!(Regexp.union(*regexp_fragments)) do |match|
key_value_pairs.detect{|k,v| k =~ match}[1]
end
end
end
num_swap = [[/one/i,'1'],[/two/i,'2'],[/three/i,'4']]
lines.slice!(0) && lines.each do |f|
if (f[-1].split("")[-1].to_i > 6)
puts f[0].gsub!(/\s.*\(.*\)(.*)/,'').to_s + f[-1].mgsub!(num_swap)
end
end
Adapted from The Ruby Cookbook.