This works perfectly for me now. In case anyone may benefit from it:


require 'csv'

def load_xvid_file(path_to_csv)
  @films = []
  csv_contents = CSV.read(path_to_csv)
  csv_contents.shift
  csv_contents.each do |row|
    @films << row[0]
  end
  @films.each { |f| f.downcase! }
end

def search_for_film
  print "Enter name of film to search for: "
  film = gets.chomp.downcase

  results = [@films.grep(/#{film}/)]
  if results
    results.each { |f| puts f }
    prompt
  else
    puts "Nothing found."
    prompt
  end
end

def prompt
  print "Search again? (y or n) "
  answer = gets.chomp.downcase

  case answer
  when /^y/
    search_for_film
  when /^n/
    puts "Goodbye."
    exit
  else
    prompt
  end
end

load_xvid_file("/home/simon/Documents/CSV/XviD.csv")
search_for_film

-- 
Posted via http://www.ruby-forum.com/.