Ruby 2.6.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Rangeクラス > %

instance method Range#%

step(s = 1) {|item| ... } -> self[permalink][rdoc]
step(s = 1) -> Enumerator
step(s = 1) -> Enumerator::ArithmeticSequence
self % s -> Enumerator
self % s -> Enumerator::ArithmeticSequence

範囲内の要素を s おきに繰り返します。

[PARAM] s:
各ステップの大きさを数値で指定します。負の数を指定することもできます。
[RETURN]
ブロックを指定した時は self を返します。
[RETURN]
ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence を返します。
[RETURN]
ブロックを指定しなかったその他の Range の時は Enumerator を返します。(例: String の Range)

例:

("a" .. "f").step(2) {|v| p v}
# => "a"
     "c"
     "e"