[解決済み] Rubyでランダムな文字列を生成する方法
2022-02-08 02:59:06
質問
現在、"A" ... "Z" の8文字の大文字の疑似乱数文字列を生成しています。
value = ""; 8.times{value << (65 + rand(25)).chr}
しかし、これでは見た目が悪いし、1つの文ではないので引数として渡すことができない。 大文字と小文字が混在する文字列 "a" ... "z" に加えて "A" ... "Z" を得るために、このように変更したのです。
value = ""; 8.times{value << ((rand(2)==1?65:97) + rand(25)).chr}
が、ゴミのように見える。
どなたか良い方法をご存じないでしょうか?
どのように解決するのですか?
(0...8).map { (65 + rand(26)).chr }.join
ゴルフに時間をとられすぎている。
(0...50).map { ('a'..'z').to_a[rand(26)] }.join
そして最後のものは、さらに紛らわしいですが、より柔軟で無駄なサイクルが少ないものです。
o = [('a'..'z'), ('A'..'Z')].map(&:to_a).flatten
string = (0...50).map { o[rand(o.length)] }.join
もし、ランダムなテキストを生成したい場合は、次のようにします。
50.times.map { (0...(rand(10))).map { ('a'..'z').to_a[rand(26)] }.join }.join(" ")
このコードは、10文字未満の単語を含む50個のランダムな単語を生成し、スペースで結合します。
関連
-
[解決済み] Ruby で PDF 文書を解析する
-
[解決済み] なぜパスワードにはStringではなくchar[]が好まれるのですか?
-
[解決済み] JavaScriptでランダムな文字列/文字を生成する
-
[解決済み] JavaScriptで特定の範囲のランダムな整数を生成する?
-
[解決済み] 乱数(int)を生成する方法を教えてください。
-
[解決済み] Rubyのswitch文の書き方
-
[解決済み] JavaScriptで2つの数値の間の乱数を生成する
-
[解決済み] 英数字のランダムな文字列を生成する方法
-
[解決済み] 0から9までのランダムな整数を生成する
-
[解決済み】大文字と数字を含むランダムな文字列の生成
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】macOSでrbenvをアンインストールする方法とは?
-
[解決済み] Rubyのローカル変数が未定義である
-
[解決済み] ルビー階乗関数
-
[解決済み] Rubyがブロックの中でパイプ文字を使うことについて、誰か説明してください。
-
[解決済み] Rubyで日付文字列をパースする
-
[解決済み] rubyでディレクトリからすべてのファイルを要求する最良の方法?
-
[解決済み] nil から String への暗黙の変換ができないエラー
-
[解決済み] Ruby: 文字列をブーリアンに変換する方法
-
[解決済み] Rubyでガウス(正規分布)乱数を生成するコード
-
[解決済み] JanusのセットアップにVIMプラグインを追加する