• ベストアンサー

ランダムな8桁の文字作成

ランダムに数字を作成するrandはありますが、私の知っている限りランダムに文字を作成する関数がありません。 どのようにしたらランダムに文字を作成する事が出来るでしょうか? 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#25358
noname#25358
回答No.2

 俺が過去に使ったものです。  参考になりますか? $mm = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; $pp = ''; for ( $i = 0; $i < 8; $i++ ) { $pp .= substr($mm, int(rand(length($mm))), 1); }

その他の回答 (2)

回答No.3

他にもいろいろ方法はあると思いますが、、、。 あらかじめ出現させたい文字をリスト(配列)に入れておいて(下の例の場合@a)、 randでその配列の中の1つを取り出せば良いと思います。 perl -e '$s="ABCDEFGHIJKLMNOPQRSTUVWXYZ"; @a=split( //, $s ); printf "%s\n",$a[ int(rand()*length($s)) ]'

  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.1

0~35の乱数で、 0だったら0 1だったら1 2だったら2 ・ ・ 8だったら8 9だったら9 10だったらA 11だったらB 12だったらC ・ ・ 34だったら… 35だったら… とか。 普通は、文字コードなんかを使うと思いますが。

関連するQ&A