Method: Wagon::Address.extract_from_string

Defined in:
lib/wagon/address.rb

.extract_from_string(string) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/wagon/address.rb', line 7

def self.extract_from_string(string)
  parts   = string.split("\n").collect(&:strip).delete_if(&:empty?)
  street  = city = state = zip = country = nil
  
  parts.delete_if do |part|
    next unless part =~ CITY_STATE_ZIP
    city, state, zip = $1, ($2 || '').strip(), $3; true
  end
  
  self.new(parts.shift, city, state, zip, parts.shift)
end