ライブラリ
- ビルトイン (788)
- csv (126)
- date (4)
- forwardable (24)
-
rexml
/ document (180)
クラス
- Array (72)
- CSV (96)
-
CSV
:: FieldInfo (24) -
CSV
:: Row (6) - Date (2)
- DateTime (2)
-
Enumerator
:: Lazy (90) -
File
:: Stat (12) - Object (48)
-
REXML
:: Attributes (144) -
REXML
:: Element (36) - Range (118)
-
RubyVM
:: AbstractSyntaxTree :: Node (14) -
RubyVM
:: InstructionSequence (24) - String (216)
-
Thread
:: Backtrace :: Location (36) - Time (2)
モジュール
- Enumerable (156)
- Forwardable (24)
キーワード
- <=> (12)
- [] (84)
- []= (36)
- attribute (12)
- begin (12)
-
chunk
_ while (12) -
col
_ sep (12) - convert (36)
- deconstruct (3)
-
deconstruct
_ keys (9) - delegate (12)
- delete (12)
-
delete
_ all (12) - each (12)
-
each
_ attribute (12) - eager (6)
- end (12)
-
enum
_ for (48) -
first
_ column (7) -
first
_ lineno (19) -
get
_ attribute (12) -
get
_ attribute _ ns (12) - header (12)
-
header
_ convert (36) - index (12)
- inject (36)
-
instance
_ delegate (12) - label (12)
- last (48)
- lazy (12)
- length (12)
- lineno (12)
- min (46)
- namespaces (12)
- path (12)
- prefixes (12)
- puts (12)
- reduce (36)
- root (12)
-
root
_ node (12) - size (12)
- slice (72)
- slice! (72)
-
slice
_ before (24) -
slice
_ when (12) - take (12)
-
take
_ while (24) -
to
_ a (12) -
to
_ enum (48)
検索結果
先頭5件
-
Range
# min {|a , b| . . . } -> object | nil (129.0) -
ブロックの評価結果で範囲内の各要素の大小判定を行い、最小の要素、もしくは 最小の n 要素を返します。引数を指定しない形式では、範囲内に要素が存在しなければ nil を返します。引数を指定する形式では、空の配列を返します。
...数。
@raise TypeError ブロックが整数以外を返したときに発生します。
@see Range#first, Range#max, Enumerable#min
//emlist[例][ruby]{
h = { 1 => "C", 2 => "Go", 3 => "Ruby" }
(1..3).min { |a, b| h[a].length <=> h[b].length } # => 1
//}
//emlist[例][ruby]{
(1..3).min(2) {......|a, b| h[a].length <=> h[b].length } # => [1, 2]
//}... -
Range
# min(n) -> [object] (129.0) -
範囲内の最小の値、もしくは最小の n 要素が昇順で入った配列を返します。
...、もしくは最小の n 要素が昇順で入った配列を返します。
@param n 取得する要素数。
//emlist[例][ruby]{
(1..5).min # => 1
//}
//emlist[例][ruby]{
(1..5).min(3) # => [1, 2, 3]
//}
始端が終端より大きい場合、もしくは、終端を含まない範囲オ......と
等しい場合は、引数を指定しない形式では nil を返します。
引数を指定する形式では、空の配列を返します。
//emlist[例][ruby]{
(2..1).min # => nil
(1...1).min # => nil
//}
//emlist[例][ruby]{
(2..1).min(3) # => []
(1...1).min(3) # => []
//}... -
Range
# min(n) {|a , b| . . . } -> [object] (129.0) -
ブロックの評価結果で範囲内の各要素の大小判定を行い、最小の要素、もしくは 最小の n 要素を返します。引数を指定しない形式では、範囲内に要素が存在しなければ nil を返します。引数を指定する形式では、空の配列を返します。
...数。
@raise TypeError ブロックが整数以外を返したときに発生します。
@see Range#first, Range#max, Enumerable#min
//emlist[例][ruby]{
h = { 1 => "C", 2 => "Go", 3 => "Ruby" }
(1..3).min { |a, b| h[a].length <=> h[b].length } # => 1
//}
//emlist[例][ruby]{
(1..3).min(2) {......|a, b| h[a].length <=> h[b].length } # => [1, 2]
//}... -
Array
# []=(start , length , val) (128.0) -
インデックス start から length 個の要素を配列 val の内容で置き換えます。 start が自身の末尾を越える時には配列の長さを自動的に拡張し、拡張した領域を nil で初期化します。
...インデックス start から length 個の要素を配列 val の内容で置き換えます。
start が自身の末尾を越える時には配列の長さを自動的に拡張し、拡張した領域を nil で初期化します。
//emlist[例][ruby]{
ary = [0, 1, 2, 3]
ary[1, 2] = ["a", "b"......nil, "Z"]
ary = [0, 1, 2, 3]
ary[0, 10] = ["a"]
p ary #=> ["a"]
//}
@param start 置き換えたい範囲の先頭のインデックスを指定します。
start の値が負の時には末尾からのインデックスと見倣します。
末尾......外のオブジェクトを指定した場合は to_int メソッドによ
る暗黙の型変換を試みます。
@param length 置き換えたい要素の個数を指定します。
length の値が 0 のときは start の直前に val を挿入します。... -
Range
# min {|a , b| . . . } -> object | nil (121.0) -
ブロックの評価結果で範囲内の各要素の大小判定を行い、最小の要素を返しま す。範囲内に要素が存在しなければ nil を返します。
...整数
を、期待しています。
@raise TypeError ブロックが整数以外を返したときに発生します。
@see Range#first, Range#max, Enumerable#min
//emlist[例][ruby]{
h = { 1 => "C", 2 => "Go", 3 => "Ruby" }
(1..3).min { |a, b| h[a].length <=> h[b].length } # => 1
//}... -
Enumerable
# lazy -> Enumerator :: Lazy (119.0) -
自身を lazy な Enumerator に変換したものを返します。
...ator に変換したものを返します。
この Enumerator は、以下のメソッドが遅延評価を行う (つまり、配列ではな
くEnumeratorを返す) ように再定義されています。
* map/collect
* flat_map/collect_concat
* select/find_all
* reject
* grep
* take, ta......emlist[例][ruby]{
def pythagorean_triples
(1..Float::INFINITY).lazy.flat_map {|z|
(1..z).flat_map {|x|
(x..z).select {|y|
x**2 + y**2 == z**2
}.map {|y|
[x, y, z]
}
}
}
end
# 最初の10個のピタゴラス数を表示する
p pythagorean_triples.take(......10).force # takeはlazyなので、forceが必要です
p pythagorean_triples.first(10) # firstはeagerです
# 100より小さいピタゴラス数を表示する
p pythagorean_triples.take_while { |*, z| z < 100 }.force
//}
@see Enumerator::Lazy... -
Enumerable
# slice _ before {|elt| bool } -> Enumerator (119.0) -
パターンがマッチした要素、もしくはブロックが真を返した要素から 次にマッチする手前までを チャンク化(グループ化)したものを繰り返す Enumerator を 返します。
...はブロックが真を返した要素から
次にマッチする手前までを
チャンク化(グループ化)したものを繰り返す Enumerator を
返します。
パターンを渡した場合は各要素に対し === が呼び出され、
それが真になったところをチャン......配列として表現されます。
Enumerable#to_a や Enumerable#map のようなメソッドを使うこ
ともできます。
//emlist[例][ruby]{
# 偶数要素をチャンクの先頭と見なす
[0,2,4,1,2,4,5,3,1,4,2].slice_before(&:even?).to_a
# => [[0], [2], [4, 1], [2], [4, 5, 3, 1], [......4], [2]]
# 奇数要素をチャンクの先頭と見なす
[0,2,4,1,2,4,5,3,1,4,2].slice_before(&:odd?).to_a
# => [[0, 2, 4], [1, 2, 4], [5], [3], [1, 4, 2]]
# ChangeLog のエントリーを順に取る
open("ChangeLog") {|f|
f.slice_before(/\A\S/).each {|e| pp e}
}
# 上と同じだが、パ... -
Enumerable
# slice _ before(pattern) -> Enumerator (119.0) -
パターンがマッチした要素、もしくはブロックが真を返した要素から 次にマッチする手前までを チャンク化(グループ化)したものを繰り返す Enumerator を 返します。
...はブロックが真を返した要素から
次にマッチする手前までを
チャンク化(グループ化)したものを繰り返す Enumerator を
返します。
パターンを渡した場合は各要素に対し === が呼び出され、
それが真になったところをチャン......配列として表現されます。
Enumerable#to_a や Enumerable#map のようなメソッドを使うこ
ともできます。
//emlist[例][ruby]{
# 偶数要素をチャンクの先頭と見なす
[0,2,4,1,2,4,5,3,1,4,2].slice_before(&:even?).to_a
# => [[0], [2], [4, 1], [2], [4, 5, 3, 1], [......4], [2]]
# 奇数要素をチャンクの先頭と見なす
[0,2,4,1,2,4,5,3,1,4,2].slice_before(&:odd?).to_a
# => [[0, 2, 4], [1, 2, 4], [5], [3], [1, 4, 2]]
# ChangeLog のエントリーを順に取る
open("ChangeLog") {|f|
f.slice_before(/\A\S/).each {|e| pp e}
}
# 上と同じだが、パ... -
Array
# []=(nth , val) (118.0) -
nth 番目の要素を val に設定します。nth が配列の範囲を越える時には配列の長さを自動的に拡張し、 拡張した領域を nil で初期化します。
...nth 番目の要素を val に設定します。nth が配列の範囲を越える時には配列の長さを自動的に拡張し、
拡張した領域を nil で初期化します。
@param nth インデックスを整数で指定します。
整数以外のオブジェクトを指定......した場合は to_int メソッドによる
暗黙の型変換を試みます。
@param val 設定したい要素の値を指定します。
@raise TypeError 引数 nth に整数以外の(暗黙の型変換が行えない)オブジェ
クトを指定した場合に発......生します。
@raise IndexError 指定された nth が自身の始点よりも前を指している場合に発生します。
//emlist[例][ruby]{
a = [0, 1, 2, 3, 4, 5]
a[0] = "a"
p a #=> ["a", 1, 2, 3, 4, 5]
a[10] = "x"
p a #=> ["a", 1, 2, 3, 4, 5, nil, nil, nil, nil, "x"]
a = [0, 1, 2, 3... -
Range
# min -> object | nil (116.0) -
範囲内の最小の値を返します。
...小の値を返します。
//emlist[例][ruby]{
(1..5).min # => 1
//}
始端が終端より大きい場合、もしくは、終端を含まない範囲オブジェクトの始端が終端と
等しい場合は nil を返します。
//emlist[例][ruby]{
(2..1).min # => nil
(1...1).min... -
CSV
:: FieldInfo # header -> String | nil (113.0) -
利用可能な場合はヘッダを表す文字列を返します。
...list[例][ruby]{
require 'csv'
csv = CSV.new("date1,date2\n2018-07-09,2018-07-10", headers: true)
csv.convert do |field,field_info|
p field_info.header
Date.parse(field)
end
p csv.first
# => "date1"
# => "date2"
# => #<CSV::Row "date1":#<Date: 2018-07-09 ((2458309j,0s,0n),+0s,2299161j)> "date2......":#<Date: 2018-07-10 ((2458310j,0s,0n),+0s,2299161j)>>
//}... -
CSV
:: FieldInfo # index -> Integer (113.0) -
行内で何番目のフィールドかわかるゼロベースのインデックスを返します。
...emlist[例][ruby]{
require 'csv'
csv = CSV.new("date1,date2\n2018-07-09,2018-07-10", headers: true)
csv.convert do |field,field_info|
p field_info.index
Date.parse(field)
end
p csv.first
# => 0
# => 1
# => #<CSV::Row "date1":#<Date: 2018-07-09 ((2458309j,0s,0n),+0s,2299161j)> "date2":#<Date: 2...