Как отсортировать строки в алфавитном порядке?

Если вы хотите отсортировать строки таким образом: AAA, BBB, ..., ZZZ, aaa, bbb, то встроенная сортировка как-раз подойдет.

Если вы хотите сортировать строки, игнорируя регистр, сравнивайте копии строк, приведенные к нижнему регистра:

   array = %w( z bB Bb BB bb Aa aA AA aa a )
   puts array.sort { |a,b|  a.downcase <=> b.downcase }

Если вы хотите отсортировать строки так, чтобы A и a шли вместе, но a расценивалось больше чем A (чтобы Aa следовало после AA, но до AB), используете следующий код:

  puts array.sort do |a,b|
    (a.downcase <=> b.downcase).nonzero? || a <=> b
  end