全ASCII文字を列挙

これも教えてもらった。

% ruby -e '" ".upto("~"){|s|puts s}'

→訂正:出力結果を確認してなかった。これも下と同じで9で止まってしまう。

uptoはブロックが必須。返値は自分のみ。

> " ".upto("~").to_a
LocalJumpError: no block given
> " ".upto("~"){|s|s}.to_a
=> [" "]

範囲演算子を使うと途中で止まってしまう
文字コードの数値リテラルを使うといける

> (' '..'~').to_a.join
=> " !\"\#$%&'()*+,-./0123456789"
> (?!..?~).to_a.pack('C*')
=> "!\"\#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~"