るりまサーチ

最速Rubyリファレンスマニュアル検索!
76件ヒット [1-76件を表示] (0.049秒)

別のキーワード

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

クラス

キーワード

検索結果

CSV::Table#values_at(indices_or_headers) -> Array (6145.0)

デフォルトのミックスモードでは、インデックスのリストを与えると行単位の 参照を行い、行の配列を返します。他の方法は列単位の参照と見なします。行 単位の参照では、返り値は行ごとの配列を要素に持つ配列です。

...たい場合は CSV::Table#by_col!,
CSV
::Table#by_row! を使用してください。

アクセスモードを混在させることはできません。

//emlist[例 ロウモード][ruby]{
require
"csv"

row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["heade...
...["row2_1", "row2_2"])
table = CSV::Table.new([row1, row2])
table.values_at(1) # => [#<CSV::Row "header1":"row2_1" "header2":"row2_2">]
//}

//emlist[例 カラムモード][ruby]{
require
"csv"

row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header...
...2"], ["row2_1", "row2_2"])
table = CSV::Table.new([row1, row2])
table.by_col!
table.values_at(1) # => [["row1_2"], ["row2_2"]]
//}

@
see CSV::Table#by_col!, CSV::Table#by_row!...

String#parse_csv(**options) -> [String] (195.0)

CSV.parse_line(self, options) と同様です。

...
CSV
.parse_line(self, options) と同様です。

1 行の CSV 文字列を、文字列の配列に変換するためのショートカットです。

@
param options CSV.new と同様のオプションを指定します。

//emlist[][ruby]{
require
"csv"

p "Matz,Ruby\n".parse_csv...
...# => ["Matz", "Ruby"]
p "Matz|Ruby\r\n".parse_csv(col_sep: '|', row_sep: "\r\n") # => ["Matz", "Ruby"]
//}

Ruby
2.6 (CSV 3.0.2) から、次のオプションが使えるようになりました。

//emlist[][ruby]{
require
'csv'

p "1,,3\n".parse_csv # => [...
...,,3\n".parse_csv(nil_value: Float::NAN) # => ["1", NaN, "3"]
//}

Ruby
2.7 (CSV 3.1.2) から、次のオプションが使えるようになりました。

//emlist[][ruby]{
require
'csv'

p "Matz, Ruby\n".parse_csv # => ["Matz", " Ruby"]
p "Matz, Ruby\n".parse_csv(strip: true)...

CSV::Row#[]=(header_or_index, value) (188.0)

ヘッダの名前かインデックスでフィールドを探し、値をセットします。

...と、新しい要素を末尾に追加します。

@
param header_or_index ヘッダの名前かインデックスを指定します。

@
param value 値を指定します。

//emlist[例 ヘッダの名前で指定][ruby]{
require
"csv"

row = CSV::Row.new(["header1", "header2"], ["row1_1", "row1...
...の index で指定][ruby]{
require
"csv"

row = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])

row["header1"] # => "row1_1"
row[0] = "updated"
row["header1"] # => "updated"
//}

//emlist[例 ヘッダの名前と offset で指定][ruby]{
require
"csv"

row = CSV::Row.new(["header1",...
..."header2", "header1"], ["row1_1", "row1_2", "row1_3"])

row # => #<CSV::Row "header1":"row1_1" "header2":"row1_2" "header1":"row1_3">
row["header1", 1] = "updated"
row # => #<CSV::Row "header1":"row1_1" "header2":"row1_2" "header1":"updated">
//}


@
see CSV::Row#field...

CSV::Row#[]=(header, offset, value) (148.0)

ヘッダの名前でフィールドを探し、値をセットします。

...トします。

@
param header ヘッダの名前を指定します。

@
param offset このインデックスより後で、ヘッダの名前を探します。
重複しているヘッダがある場合に便利です。

@
param value 値を指定します。

@
see CSV::Row#field...

CSV::Table#delete_if {|column_name, values| ... } -> self (145.0)

ブロックを評価した結果が真である行か列を削除します。

...

//emlist[例 ロウモード][ruby]{
require
"csv"

row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "valid"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "invalid"])
row3 = CSV::Row.new(["header1", "header2"], ["row3_1", "valid"])
table = CSV::Table.new([row1, row2, row3])
tab...
...ラムモード][ruby]{
require
"csv"
row1 = CSV::Row.new(["id", "name"], [1, "tanaka"])
row2 = CSV::Row.new(["id", "name"], [2, "suzuki"])
row3 = CSV::Row.new(["id", "name"], [3, "sato"])
table = CSV::Table.new([row1, row2, row3])
table.by_col!
table.delete_if { |column_name, values| column_name ==...
..."id" }
table.to_a # => [["name"], ["tanaka"], ["suzuki"], ["sato"]]
//}

@
see CSV::Table#delete...

絞り込み条件を変える

CSV::Table#[]=(index_or_header, value) (140.0)

ミックスモードでは、このメソッドは引数に行番号を指定すれば行単位で動作 し、ヘッダの名前を指定すれば列単位で動作します。

...で動作します。

このメソッドを呼び出す前に CSV::Table#by_col! を呼び出すとカラム
モードになります。また CSV::Table#by_row! を呼び出すとロウモード
になります。

行には配列か CSV::Row のインスタンスを指定します。

列に値...
...

@
param index_or_header 行番号かヘッダの名前を指定します。

@
param value 値を指定します。

//emlist[例][ruby]{
require
"csv"

row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
row3 = CSV::...
...(["header1", "header2"], ["row3_1", "row3_2"])
table = CSV::Table.new([row1, row2])
table[0] # => #<CSV::Row "header1":"row1_1" "header2":"row1_2">
table[1] # => #<CSV::Row "header1":"row2_1" "header2":"row2_2">
table[1] = row3
table[1] # => #<CSV::Row "header1":"row3_1" "header2":"row3_2">
table.by...

Array#to_csv(**options) -> String (123.0)

CSV.generate_line(self, options) と同様です。

...
CSV
.generate_line(self, options) と同様です。

Array オブジェクトを 1 行の CSV 文字列に変換するためのショートカットです。

@
param options CSV.generate_line と同様のオプションを指定します。

//emlist[][ruby]{
require
'csv'

p [1, 'Matz', :Ruby, Dat...
...o_csv # => "1,Matz,Ruby,1965-04-14\n"
p [1, 'Matz', :Ruby, Date.new(1965, 4, 14)].to_csv(col_sep: ' ', row_sep: "\r\n") # => "1 Matz Ruby 1965-04-14\r\n"
//}

Ruby
3.0 (CSV 3.1.9) から、次のオプションが使えるようになりました。

//emlist[][ruby]...
...{
require 'csv'

puts [1, nil].to_csv # => 1,
puts [1, nil].to_csv(write_nil_value: "N/A") # => 1,N/A
puts [2, ""].to_csv # => 2,""
puts [2, ""].to_csv(write_empty_value: "BLANK") # => 2,BLANK
//}

@
see CSV.generate_line...

String#parse_csv(**options) -> [String] (117.0)

CSV.parse_line(self, options) と同様です。

...
CSV
.parse_line(self, options) と同様です。

1 行の CSV 文字列を、文字列の配列に変換するためのショートカットです。

@
param options CSV.new と同様のオプションを指定します。

//emlist[][ruby]{
require
"csv"

p "Matz,Ruby\n".parse_csv...
...# => ["Matz", "Ruby"]
p "Matz|Ruby\r\n".parse_csv(col_sep: '|', row_sep: "\r\n") # => ["Matz", "Ruby"]
//}

Ruby
2.6 (CSV 3.0.2) から、次のオプションが使えるようになりました。

//emlist[][ruby]{
require
'csv'

p "1,,3\n".parse_csv # => [...
..."1", nil, "3"]
p "1,,3\n".parse_csv(nil_value: Float::NAN) # => ["1", NaN, "3"]
//}


@
see CSV.new, CSV.parse_line...