るりまサーチ

最速Rubyリファレンスマニュアル検索!
359件ヒット [1-100件を表示] (0.159秒)
トップページ > クエリ:t[x] > クエリ:Ruby[x] > 種類:インスタンスメソッド[x] > クエリ:r[x] > クエリ:ruby[x] > クラス:Range[x] > ライブラリ:ビルトイン[x]

別のキーワード

  1. rbconfig ruby
  2. fiddle ruby_free
  3. fiddle build_ruby_platform
  4. rake ruby
  5. rubygems/defaults ruby_engine

キーワード

検索結果

<< 1 2 3 ... > >>

Range#entries -> Array (12216.0)

self を配列に変換します。

...@raise RangeError 終端のない Range オブジェクトを変換しようとしたときに発生します。

//emlist[例][ruby]{
p (5..0).to_a # => []
p (0..3).to_a # => [0, 1, 2, 3]
p ('a'..'c').to_a # => ["a", "b", "c"]
p (:a..:d).to_a # => [:a, :b, :c, :d]

r
equire 'date'
p (Dat...
...e.new(1965, 4, 14) .. Date.new(1965, 4, 14)).to_a # => [#<Date: 1965-04-14 ((2438865j,0s,0n),+0s,2299161j)>]

(1..).to_a # RangeError: cannot convert endless range to an array
//}...

Range#first -> object (9320.0)

始端の要素を返します。 始端を持たない範囲オブジェクトの場合、begin はnilを返しますが, first は例外 RangeError が発生します。

...しますが, first は例外 RangeError が発生します。

//emlist[例][ruby]{
# 始端を持つ場合
p (1..5).begin # => 1
p (1..0).begin # => 1
p (1..5).first # => 1
p (1..0).first # => 1

# 始端を持たない場合
p (..5).begin #=> nil
p (..5).first #=> RangeError
//}

@see Range#end...

Range#first(n) -> [object] (9230.0)

最初の n 要素を返します。範囲内に要素が含まれない場合は空の配列を返します。

...い場合は空の配列を返します。

@param n 取得する要素数を整数で指定します。整数以外のオブジェクトを指定
した場合は to_int メソッドによる暗黙の型変換を試みます。

@raise TypeError 引数に整数以外の(暗黙の型変換...
...が行えない)オブジェクトを
指定した場合に発生します。

@raise ArgumentError n に負の数を指定した場合に発生します。

//emlist[例][ruby]{
(10..20).first(3) # => [10, 11, 12]
//}

@see Range#last, 12697...

Range#inspect -> String (9216.0)

self を文字列に変換します(始端と終端のオブジェクトは #inspect メソッド で文字列に変換されます)。

...self を文字列に変換します(始端と終端のオブジェクトは #inspect メソッド
で文字列に変換されます)。

@see Range#to_s

//emlist[例][ruby]{
(1..5).inspect # => "1..5"
("1".."5").inspect # => "\"1\"..\"5\""
//}...

Range#step(s = 1) -> Enumerator (9216.0)

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

...す。

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

//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10

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

(10..0).step(-3) {|v| p v}...

絞り込み条件を変える

Range#step(s = 1) {|item| ... } -> self (9216.0)

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

...す。

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

//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10

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

(10..0).step(-3) {|v| p v}...

Range#to_a -> Array (9216.0)

self を配列に変換します。

...@raise RangeError 終端のない Range オブジェクトを変換しようとしたときに発生します。

//emlist[例][ruby]{
p (5..0).to_a # => []
p (0..3).to_a # => [0, 1, 2, 3]
p ('a'..'c').to_a # => ["a", "b", "c"]
p (:a..:d).to_a # => [:a, :b, :c, :d]

r
equire 'date'
p (Dat...
...e.new(1965, 4, 14) .. Date.new(1965, 4, 14)).to_a # => [#<Date: 1965-04-14 ((2438865j,0s,0n),+0s,2299161j)>]

(1..).to_a # RangeError: cannot convert endless range to an array
//}...

Range#to_s -> String (9216.0)

self を文字列に変換します(始端と終端のオブジェクトは #to_s メソッドで文 字列に変換されます)。

...self を文字列に変換します(始端と終端のオブジェクトは #to_s メソッドで文
字列に変換されます)。

@see Range#inspect

//emlist[例][ruby]{
(1..5).to_s # => "1..5"
("1".."5").to_s # => "1..5"
//}...

Range#step(s = 1) -> Enumerator (6258.0)

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

...@param s 次のステップへ遷移するたびに加算されるものを指定します。
@return ブロックを指定した時は self を返します。
@return ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence を返します。
@return...
...他の Range の時は Enumerator を返します。(例: String の Range)

//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10

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

(10..0).step(-3) {|v| p v}
# => 10
# 7
# 4
# 1
//}


非数値の Range...
... Range で s に数値を指定した場合を除きます)

//emlist[数値以外の Range に対する例][ruby]{
# Time の Range は each でイテレートできない
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).each { |t| p t }
# => 'Range#each': can't iterate from Time (TypeError)...

Range#step(s = 1) -> Enumerator::ArithmeticSequence (6258.0)

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

...@param s 次のステップへ遷移するたびに加算されるものを指定します。
@return ブロックを指定した時は self を返します。
@return ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence を返します。
@return...
...他の Range の時は Enumerator を返します。(例: String の Range)

//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10

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

(10..0).step(-3) {|v| p v}
# => 10
# 7
# 4
# 1
//}


非数値の Range...
... Range で s に数値を指定した場合を除きます)

//emlist[数値以外の Range に対する例][ruby]{
# Time の Range は each でイテレートできない
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).each { |t| p t }
# => 'Range#each': can't iterate from Time (TypeError)...

絞り込み条件を変える

Range#step(s = 1) {|item| ... } -> self (6258.0)

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

...@param s 次のステップへ遷移するたびに加算されるものを指定します。
@return ブロックを指定した時は self を返します。
@return ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence を返します。
@return...
...他の Range の時は Enumerator を返します。(例: String の Range)

//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10

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

(10..0).step(-3) {|v| p v}
# => 10
# 7
# 4
# 1
//}


非数値の Range...
... Range で s に数値を指定した場合を除きます)

//emlist[数値以外の Range に対する例][ruby]{
# Time の Range は each でイテレートできない
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).each { |t| p t }
# => 'Range#each': can't iterate from Time (TypeError)...

Range#bsearch -> Enumerator (6228.0)

ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二 分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を 返します。

...場合: true を返す
* 求める値がブロックパラメータより後の要素の場合: false を返す

ブロックの評価結果が true になる最初の要素を返すか、nil を返します。


//emlist[例][ruby]{
ary = [0, 4, 7, 10, 12]
(0...ary.size).bsearch {|i| ary[i] >= 4 }...
...# => 1
(0...ary.size).bsearch {|i| ary[i] >= 6 } # => 2
(0...ary.size).bsearch {|i| ary[i] >= 8 } # => 3
(0...ary.size).bsearch {|i| ary[i] >= 100 } # => nil

(0.0...Float::INFINITY).bsearch {|x| Math.log(x) >= 0 } # => 1.0
//}

find-any モードは bsearch(3) のように動作します。ブロ...
...t[例][ruby]{
ary = [0, 100, 100, 100, 200]
(0..4).bsearch {|i| 100 - ary[i] } # => 1, 2 or 3
(0..4).bsearch {|i| 300 - ary[i] } # => nil
(0..4).bsearch {|i| 50 - ary[i] } # => nil
//}

上記の 2 つのモードを混在して使用しないでください(ブロックの評価結果は
常に tr...

Range#bsearch {|obj| ... } -> object | nil (6228.0)

ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二 分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を 返します。

...場合: true を返す
* 求める値がブロックパラメータより後の要素の場合: false を返す

ブロックの評価結果が true になる最初の要素を返すか、nil を返します。


//emlist[例][ruby]{
ary = [0, 4, 7, 10, 12]
(0...ary.size).bsearch {|i| ary[i] >= 4 }...
...# => 1
(0...ary.size).bsearch {|i| ary[i] >= 6 } # => 2
(0...ary.size).bsearch {|i| ary[i] >= 8 } # => 3
(0...ary.size).bsearch {|i| ary[i] >= 100 } # => nil

(0.0...Float::INFINITY).bsearch {|x| Math.log(x) >= 0 } # => 1.0
//}

find-any モードは bsearch(3) のように動作します。ブロ...
...t[例][ruby]{
ary = [0, 100, 100, 100, 200]
(0..4).bsearch {|i| 100 - ary[i] } # => 1, 2 or 3
(0..4).bsearch {|i| 300 - ary[i] } # => nil
(0..4).bsearch {|i| 50 - ary[i] } # => nil
//}

上記の 2 つのモードを混在して使用しないでください(ブロックの評価結果は
常に tr...

Range#reverse_each -> Enumerator (6222.0)

逆順に各要素に対してブロックを評価します。

...列を作ります。ただし、端点が Integer である場合は、配列を作らないように最適化が行われています。

ブロックを省略した場合は、各要素を逆順に辿る
Enumerator を返します。

@raise TypeError 終端を持たない範囲オブジェクト...
...に対してこのメソッドを呼んだ場合に発生します。

//emlist[例][ruby]{
(1..3).reverse_each # => #<Enumerator: ...>
(1..3).reverse_each { |v| p v }
# => 3
# 2
# 1
(1..).reverse_each { |v| p v } # raises: TypeError: can't iterate from NilClass
//}...
<< 1 2 3 ... > >>