るりまサーチ

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

別のキーワード

  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] (9399.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) #...

Array#to_csv(**options) -> String (9327.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] (9327.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...

CSV::Row#delete_if {|header, field| ... } -> self (9322.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":"inval...
...id" "header4":"valid4">
r
ow.delete_if { |header, field| field == "invalid" }
r
ow # => #<CSV::Row "header1":"valid1" "header2":"valid2" "header4":"valid4">
//}...

Array#to_csv(**options) -> String (9303.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 (9222.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!
table # => #<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 (9222.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 (6335.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#puts(row) -> self (3336.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...

CSV::Table#push(*rows) -> self (3246.0)

複数の行を追加するためのショートカットです。

...ist[][ruby]{
r
ows.each {|row| self << row }
//}

@
param rows CSV::Row のインスタンスか配列を指定します。

//emlist[例][ruby]{
r
equire 'csv'
csv
= CSV.new("a,b,c\n1,2,3", headers: true)
t
able = csv.read
r
ows = [
CSV
::Row.new(table.headers, [4, 5, 6]),
[7, 8, 9]
]

t
able.push(*ro...
...ws)
p table[0..2]
# => [#<CSV::Row "a":"1" "b":"2" "c":"3">, #<CSV::Row "a":4 "b":5 "c":6>, #<CSV::Row "a":7 "b":8 "c":9>]
//}

@
see CSV::Table#<<...

絞り込み条件を変える

CSV::Table#<<(row_or_array) -> self (3228.0)

自身の最後に新しい行を追加します。

...す。

@
param row_or_array CSV::Row のインスタンスか配列を指定します。
配列を指定した場合は CSV::Row に変換されます。

@
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])
t
able << row2
t
able.to_a # => [["header1", "header2"], ["row1_1", "row1_2"], ["row2_1", "row2_2"]]
//}...
<< 1 2 > >>