るりまサーチ

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

別のキーワード

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

クラス

キーワード

検索結果

<< 1 2 > >>

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

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

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

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

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

//emlist[][ruby]{
r
equire "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]{
r
equire 'csv'

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

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

//emlist[][ruby]{
r
equire 'csv'

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

CSV::Row#delete_if {|header, field| ... } -> self (9316.0)

与えられたブロックにヘッダとフィールドのペアを渡して評価します。 評価した結果が真である場合に、その組を自身から削除します。

...@return メソッドチェーンのために自身を返します。

//emlist[例][ruby]{
r
equire "csv"

r
ow = CSV::Row.new(["header1", "header2", "header3", "header4"], ["valid1", "valid2", "invalid", "valid4"])

r
ow # => #<CSV::Row "header1":"valid1" "header2":"valid2" "header3":"invalid" "header...
...4":"valid4">
r
ow.delete_if { |header, field| field == "invalid" }
r
ow # => #<CSV::Row "header1":"valid1" "header2":"valid2" "header4":"valid4">
//}...

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

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

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

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

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

//emlist[][ruby]{
r
equire 'csv'

p [1, 'Matz', :Ruby, Dat...
...to_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...
...]{
r
equire '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] (9315.0)

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

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

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

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

//emlist[][ruby]{
r
equire "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]{
r
equire '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...

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

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

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

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

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

//emlist[][ruby]{
r
equire 'csv'

p [1, 'Matz', :Ruby, Dat...
...e.new(1965, 4, 14)].to_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"
//}


@see CSV.generate_line...

絞り込み条件を変える

CSV::Table#by_col_or_row! -> self (9216.0)

自身をミックスモードに変更します。

...@return 必ず自身を返すので安全にメソッドチェーンできます。

//emlist[例][ruby]{
r
equire "csv"

r
ow1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
r
ow2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
t
able = CSV::Table.new([row1, row2]).by_col!
t
a...
...ble # => #<CSV::Table mode:col row_count:3>
t
able.by_col_or_row!
t
able # => #<CSV::Table mode:col_or_row row_count:3>
//}...

CSV::Table#by_row! -> self (9216.0)

自身をロウモードに変更します。

...@return 必ず自身を返すので安全にメソッドチェーンできます。

//emlist[例][ruby]{
r
equire "csv"

r
ow1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
r
ow2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
t
able = CSV::Table.new([row1, row2])
t
able...
...# => #<CSV::Table mode:col_or_row row_count:3>
t
able.by_row!
t
able # => #<CSV::Table mode:row row_count:3>
t
able[0] # => #<CSV::Row "header1":"row1_1" "header2":"row1_2">
t
able[1] # => #<CSV::Row "header1":"row2_1" "header2":"row2_2">
//}...

CSV::Table#delete_if {|row| ... } -> self (6329.0)

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

...ist[例 ロウモード][ruby]{
r
equire "csv"

r
ow1 = CSV::Row.new(["header1", "header2"], ["row1_1", "valid"])
r
ow2 = CSV::Row.new(["header1", "header2"], ["row2_1", "invalid"])
r
ow3 = CSV::Row.new(["header1", "header2"], ["row3_1", "valid"])
t
able = CSV::Table.new([row1, row2, row3])
t
able.delete_...
...{ |row| row["header2"] == "invalid" }
t
able.to_a # => [["header1", "header2"], ["row1_1", "valid"], ["row3_1", "valid"]]
//}

//emlist[例 カラムモード][ruby]{
r
equire "csv"
r
ow1 = CSV::Row.new(["id", "name"], [1, "tanaka"])
r
ow2 = CSV::Row.new(["id", "name"], [2, "suzuki"])
r
ow3 = CSV::Row.n...
...ew(["id", "name"], [3, "sato"])
t
able = CSV::Table.new([row1, row2, row3])
t
able.by_col!
t
able.delete_if { |column_name, values| column_name == "id" }
t
able.to_a # => [["name"], ["tanaka"], ["suzuki"], ["sato"]]
//}

@see CSV::Table#delete...

CSV#read -> [Array] | CSV::Table (6243.0)

残りの行を読み込んで配列の配列を返します。 self の生成時に headers オプションに偽でない値が指定されていた場合は CSV::Table オブジェクトを返します。

...
self
の生成時に headers オプションに偽でない値が指定されていた場合は CSV::Table オブジェクトを返します。

データソースは読み込み用にオープンされている必要があります。

//emlist[例 headers: false][ruby]{
r
equire "csv"

csv
= CSV.n...
...w(DATA.read)
csv
.read
# => [["header1", "header2"], ["row1_1", "row1_2"], ["row2_1", "row2_2"]]

__END__
header1,header2
r
ow1_1,row1_2
r
ow2_1,row2_2
//}

//emlist[例 headers: true][ruby]{
r
equire "csv"

csv
= CSV.new(DATA.read, headers: true)
csv
.read
# => #<CSV::Table mode:col_or_row row_count:3>...
...__END__
header1,header2
r
ow1_1,row1_2
r
ow2_1,row2_2
//}...

CSV#readlines -> [Array] | CSV::Table (6243.0)

残りの行を読み込んで配列の配列を返します。 self の生成時に headers オプションに偽でない値が指定されていた場合は CSV::Table オブジェクトを返します。

...
self
の生成時に headers オプションに偽でない値が指定されていた場合は CSV::Table オブジェクトを返します。

データソースは読み込み用にオープンされている必要があります。

//emlist[例 headers: false][ruby]{
r
equire "csv"

csv
= CSV.n...
...w(DATA.read)
csv
.read
# => [["header1", "header2"], ["row1_1", "row1_2"], ["row2_1", "row2_2"]]

__END__
header1,header2
r
ow1_1,row1_2
r
ow2_1,row2_2
//}

//emlist[例 headers: true][ruby]{
r
equire "csv"

csv
= CSV.new(DATA.read, headers: true)
csv
.read
# => #<CSV::Table mode:col_or_row row_count:3>...
...__END__
header1,header2
r
ow1_1,row1_2
r
ow2_1,row2_2
//}...

絞り込み条件を変える

CSV#puts(row) -> self (3330.0)

自身に row を追加します。

...自身に row を追加します。

データソースは書き込み用にオープンされていなければなりません。

@param row 配列か CSV::Row のインスタンスを指定します。
CSV
::Row のインスタンスが指定された場合は、CSV::Row#fields の値...
...ist[例 配列を指定][ruby]{
r
equire "csv"

File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,yumi,adachi,21
CSV

CSV
.open("test.csv", "a") do |csv|
csv
.puts(["5", "saburo", "kondo", "34"])
end

print File.read("test.csv")
# => id,first n...
...ame,last name,age
# 1,taro,tanaka,20
# 2,jiro,suzuki,18
# 3,ami,sato,19
# 4,yumi,adachi,21
# 5,saburo,kondo,34
//}

//emlist[例 CSV::Row を指定][ruby]{
r
equire "csv"

File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,yumi,a...
<< 1 2 > >>