ランダムな英数字の文字列を生成する
大文字と小文字を含めたランダムな英数字の文字列を生成したい。ということでメモ。
以下で大文字+小文字+数字な配列が得られます。多分かなりシンプルなスクリプトなはず。
> [('a'..'z'), ('A'..'Z'), (0..9)].map { |e| e.to_a }.flatten
これを使って、以下のようにすれば6桁のランダムな文字列が取得できそうです。
> (0..6).map { a.sample }.join => "7hvXUMA"
6桁あれば、訳568億通りの組み合わせがあるので、これから当分の世界の人口くらいなら余裕で超せそうです。
> p (26+26+10)**6 => 56800235584