Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

('A'..'z')とやればアルファベット一式になると思った? 残念! asciiコード順でした!

アルファベット一式をRangeで生成しようとしたところ...

('A'..'z').to_a

#=> ["A", "B", ... , "Y", "Z",  "[",  "\\", "]", "^", "_", "`", "a",... ,"y", "z"]

と何やら意図しない記号が入っていました。
RubyのRangeはあくまでAsciiコードに則った範囲指定を行うのでこういう事になります。

というわけで...次のような感じでやると幸せになれます。*1

 [('A'..'Z').to_a,('a'..'z').to_a].flatten

*1:参照もとでは魔界記法を使っていましたが私は王道で行きます