Rubyリファレンス: Home

upto (String)

Edit   History

標準クラス・モジュール > String > upto

str.upto(last_str, exclusive = false) {|s| block }

uptoメソッドは、レシーバの文字列を最初の文字列として、最後の文字列last_strまで「次の文字列」を繰り返し作成してブロックを実行します。ブロック引数sには「次の文字列」が入ります。メソッドの戻り値はレシーバ自身です。

「次の文字列」がどのように作成されるのかは、succメソッドをご覧ください。

"cat".upto("cbb") {|s| print s, ' ' }
cat cau cav caw cax cay caz cba cbb

第2引数exclusivetrueを指定すると、最後の文字列を繰り返しに含めません。第2引数を省略、またはfalseを指定したときは、最後の文字列まで繰り返します。

"cat".upto("cbb", true) {|s| print s, ' ' }
cat cau cav caw cax cay caz cba

Ruby 1.9 Ruby 1.9では、ブロックを省略したときはEnumeratorオブジェクトを返します。Ruby 1.8ではブロックを省略すると例外LocalJumpErrorが発生します。

関連項目