def add_pattern(pattern=nil, input=nil)
if input =~ pattern
@new_regexp = $1
@new_symbol = $2
@new_regexp.gsub!(/\//, '')
new_re = %r{#{@new_regexp}}
new_re_s = new_re.to_s
if new_re_s =~ /(-mix)/
new_re_s = $~.pre_match << "i-mx" << $~.post_match
end
@new_regexp = %r{#{new_re_s}}
method_def = " def #{@new_symbol}(pattern=nil, input=nil)\n return \"#\{input} doesn't match #\{pattern}\" unless input =~ pattern\n return 'Default response from " + @new_symbol + "'\n end # method_def"
return def_method(method_def)
else
return "#{input} doesn't match #{pattern}."
end
end