人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

最近ちょっとした作業にRubyを使っています。
仕事で英数字から成るランダムな文字列を生成する必要があって、とりあえず英数字一覧の文字列を用意しようと思ったところ、キーボードから正直に全部入力すればいいんですが、プログラムで書くほうが楽かなと思った(のが間違いですが)・・・・
そこで、興味から質問です。
最終的に
0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz
という文字列(英字大小と数字及びアンダースコア・・・正規表現 ¥w 相当、但し並び順はどうでもいいです)を生成するプログラムを教えてください。
◎この質問は、プログラムの書き方がわからないのではなく「こんな書き方もできる」の募集です。
◎面白いプログラム、とても短いプログラム、トリッキーなもや勉強になるものは喜ばしいです。
◎このプログラムが役立つ場面は想像できません :-P
◎Rubyがダメな人はRuby以外でも可

●質問者: taka4
●カテゴリ:コンピュータ
✍キーワード:Ruby キーボード スコア ダメ トリッキー
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● くまっぷす
●20ポイント

http://www.ruby-lang.org/ja/man/?cmd=view;name=Ruby%A5%EA%A5%D5%...

Rubyリファレンスマニュアル - Rubyリファレンスマニュアル

しばらく触ってなかったので結構忘れてますね。

s=””

(0..127).each{|v| s=s+v.chr}

print s.scan(/¥w/)

とか。我ながらつまらない答えかも。

◎質問者からの返答

ありがとうございます。私も同じように考えました。

http://d.hatena.ne.jp/nisyu/20051005


2 ● ばびー
●20ポイント

http://www.dm4lab.to/~usa/ruby/d/200510a.html#id20051004_P1_1

私が考えたものじゃないのでポイントは要りません。

◎質問者からの返答

面白い情報ありがとうございます。

これはチャットか何かでやり取りされたのでしょうかね?

すごい方々に回答して頂いているようなので恐縮です。

とても面白いです。勉強になりました!


3 ● sumim
●20ポイント

http://d.hatena.ne.jp/sumim/20051005/p1

sumim’s smalltalking-tos - Ruby で /\w/ な文字からなる文字列を生成する

(?0..?z).map{|e|e.chr=~/¥w/&&$&}.to_s

◎質問者からの返答

ありがとうございます

先のbabie様紹介の記事中の最短と2バイト差ですね

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ