Then there's always:

eval "filename"   #;)

which will have exactly the right semantics in your case. 

On 8/3/05, David A. Black <dblack / wobblini.net> wrote:
> Hi --
> 
> On Thu, 4 Aug 2005, Joe Van Dyk wrote:
> 
> > I have a file that contains the following contents:
> >
> > sw_corner = 1000,-1000
> > ne_corner = -1000,1000
> >
> > I want to read that file and figure out what the sw_corner and
> > ne_corner values are.  Here's my following attempt, but it looks ugly.
> > How can I improve it?
> >
> > sw_corner = map_data.scan(/sw_corner = ([-\d]+),\s*([-\d]+)/)[0]
> > ne_corner = map_data.scan(/ne_corner = ([-\d]+),\s*([-\d]+)/)[0]
> 
> Here's one possibility, if you want them as integers:
> 
> require 'scanf'
> 
> map_data = <<EOM
> sw_corner = 1000,-1000
> ne_corner = -1000,1000
> EOM
> 
> format = "%*s = %d,%d"
> 
> sw = map_data.scanf(format)
> ne = map_data.scanf(format)
> 
> puts "sw is #{sw.inspect},ne is #{ne.inspect}"
> 
> 
> David
> 
> -- 
> 
> 
> David A. Black
> dblack / wobblini.net
> 
>