diff --git a/sorter.rb b/sorter.rb index f2f6eb0..801275a 100755 --- a/sorter.rb +++ b/sorter.rb @@ -21,15 +21,6 @@ require 'json' require 'pp' require 'csv' -#json = File.read('./bins.json') -csv = CSV.read('./bins.csv') -text = File.read('tester.txt') -#bins = JSON.parse(json) #Turn bins.json into a hash -output = Hash.new #Creating the output storage object - -bins = Hash.new -csv.each { |bin| bins[bin[0].to_sym] = bin[1..].compact } - #bin_counter expects: # bin - a hash with strings to search for # test - the document text to search through @@ -62,6 +53,22 @@ def write_output (output) outfile.close end +#strip_text expects: +# text - the text we're working on +# start - the starting string to search for +# fin - the ending string to search for +#This method strips out all test before "start" and after "fin" +def strip_text (text, start, fin) + text.lines(start,chomp: true)[1].lines(fin,chomp: true)[0] +end + +csv = CSV.read('./bins.csv') +text = File.read('tester.txt') +text = strip_text(text,'PLOVEINTAKE','PLOVECLOSING') +output = Hash.new #Creating the output storage object +bins = Hash.new #This hash stores the bins +csv.each { |bin| bins[bin[0].to_sym] = bin[1..].compact } #turn the csv array into a hash, remove nils + bins.each_key do |bin_number| key = bin_number.to_sym output[key] = Hash.new