Sha256: 396d6831619d6237f4e498b99bf92a0e0f2737bb22d5002af3922444e1b5b96f

Contents?: true

Size: 1.02 KB

Versions: 1

Compression:

Stored size: 1.02 KB

Contents

#!/usr/bin/env ruby
# Import::Import -- de.oddb.org -- 23.02.2007 -- hwyss@ywesee.com

require 'fixes/ruby19'
require 'iconv'

module ODDB
  module Import
    class Import
      @@iconv = Iconv.new('utf8//IGNORE//TRANSLIT', 'latin1')
      @@lower = /^(and|for|in(cl)?|on|plain|with)$/i
      attr_accessor :report
      def initialize
        @report = []
        @skip_rows = 1
      end
      def capitalize_all(str)
        ## benchmarked fastest against an append (<<) solution
        str.split(/\b/).collect { |part| 
          @@lower.match(part) ? part.downcase : part.capitalize }.join
      end
      def company_name(cname)
        cname = capitalize_all(cname.to_s)
        cname.gsub!(/\.(?!\s)/, '. ')
        cname.gsub!(/[\/&]/) { |match| ' %s ' % match }
        cname.gsub!(/Gmbh/, 'GmbH')
        cname.gsub!(/Ag\b/, 'AG')
        cname.gsub!(/\bKg\b/, 'KG')
        cname.strip!
        u(cname)
      end
      def postprocess
      end
      def utf8(str)
        u @@iconv.iconv(str) if str
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ramaze.ch.oddb.org-1.0.0 lib/oddb/import/import.rb