ライブラリ
- ビルトイン (27)
- csv (165)
- resolv (11)
-
rexml
/ document (11)
クラス
- CSV (165)
- Enumerator (5)
-
Enumerator
:: Lazy (11) -
REXML
:: XPath (11) - Range (11)
-
Resolv
:: DNS :: Resource :: TXT (11)
検索結果
先頭5件
- Range
. new(first , last , exclude _ end = false) -> Range - CSV
. new(data , options = Hash . new) -> CSV - Resolv
:: DNS :: Resource :: TXT . new(first _ string , *rest _ strings) -> Resolv :: DNS :: Resource :: TXT - REXML
:: XPath . first(element , path = nil , namespaces = {} , variables = {}) -> Node | nil - Enumerator
:: Lazy . new(obj , size=nil) {|yielder , *values| . . . } -> Enumerator :: Lazy
-
Range
. new(first , last , exclude _ end = false) -> Range (18297.0) -
first から last までの範囲オブジェクトを生成して返しま す。
...
first から last までの範囲オブジェクトを生成して返しま
す。
exclude_end が真ならば終端を含まない範囲オブジェクトを生
成します。exclude_end 省略時には終端を含みます。
@param first 最初のオブジェクト
@param last 最後のオブ......r first <=> last が nil の場合に発生します
//emlist[例: 整数の範囲オブジェクトの場合][ruby]{
Range.new(1, 10) # => 1..10
Range.new(1, 10, true) # => 1...10
//}
//emlist[例: 日付オブジェクトの範囲オブジェクトの場合][ruby]{
require 'date'
Range.new......y]{
require 'ipaddr'
Range.new(IPAddr.new("192.0.2.1"), IPAddr.new("192.0.2.3")).each {|ip| puts ip}
# => 192.0.2.1
# 192.0.2.2
# 192.0.2.3
//}
//emlist[例: 自作のオブジェクトの場合][ruby]{
MyInteger = Struct.new(:value) do
def succ
self.class.new(value + 1)
end
def <=... -
CSV
. new(data , options = Hash . new) -> CSV (18263.0) -
このメソッドは CSV ファイルを読み込んだり、書き出したりするために String か IO のインスタンスをラップします。
...す。
: :field_size_limit
This is a maximum size CSV will read ahead looking for the closing quote
for a field. (In truth, it reads to the first line ending beyond this
size.) If a quote cannot be found within the limit CSV will raise a
MalformedCSVError, assuming the data is faulty.......よって
追加したヘッダはフィールドではないので
CSV::Row#unconverted_fields は空の配列を返します。
: :headers
:first_row というシンボルか真を指定すると、CSV ファイルの一行目をヘッダとして扱います。
配列を指定するとそ......v"
users =<<-EOS
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,yumi,adachi,21
EOS
File.write("test.csv", users)
File.open("test.csv", "r") do |f|
csv = CSV.new(f, headers: true)
csv.class # => CSV
csv.first # => #<CSV::Row "id":"1" "first name":"taro" "last n... -
Resolv
:: DNS :: Resource :: TXT . new(first _ string , *rest _ strings) -> Resolv :: DNS :: Resource :: TXT (18209.0) -
Resolv::DNS::Resource::TXTのインスタンスを生成します。
...Resolv::DNS::Resource::TXTのインスタンスを生成します。
@param first_string レコードの最初の文字列
@param rest_strings レコードの残りの文字列... -
REXML
:: XPath . first(element , path = nil , namespaces = {} , variables = {}) -> Node | nil (18144.0) -
element の path で指定した XPath 文字列にマッチする最初のノードを 返します。
...Document.new(<<EOS)
<root xmlns:x='1'>
<a>
<b>b1</b>
<x:c />
<b>b2</b>
<d />
</a>
<b> b3 </b>
</root>
EOS
a = doc.root.elements[1] # => <a> ... </>
b1 = REXML::XPath.first(a, "b")
b1.text # => "b1"
REXML::XPath.first(doc, "/root/a/x:c") # => <x:c/>
REXML::XPath.first(a, "x:c"......) # => <x:c/>
REXML::XPath.first(a, "y:c") # => nil
REXML::XPath.first(a, "y:c", {"y" => "1"}) # => <x:c/>
b2 = REXML::XPath.first(doc, "/root/a/b[text()=$v]", {}, {"v" => "b2"})
b2 # => <b> ... </>
b2.text # => "b2"
//}... -
Enumerator
:: Lazy . new(obj , size=nil) {|yielder , *values| . . . } -> Enumerator :: Lazy (18120.0) -
Lazy Enumerator を作成します。Enumerator::Lazy#force メソッドなどに よって列挙が実行されたとき、objのeachメソッドが実行され、値が一つずつ ブロックに渡されます。ブロックは、yielder を使って最終的に yield される値を 指定できます。
....compact
end
end
class Enumerator::Lazy
def filter_map
Lazy.new(self) do |yielder, *values|
result = yield *values
yielder << result if result
end
end
end
1.step.lazy.filter_map{|i| i*i if i.even?}.first(5)
# => [4, 16, 36, 64, 100]
//}
@raise ArgumentError 引数を......指定しなかった場合、ブロックを指定しなかった場合に発生します。
@see Enumerator.new... -
CSV
. open(filename , mode = "rb" , options = Hash . new) -> CSV (165.0) -
このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
...同じものを指定できます。
@param options CSV.new のオプションと同じオプションを指定できます。
//emlist[例 読み取り・ブロック指定なし][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,a......V.open("test.csv", headers: true)
csv.class # => CSV
csv.first # => #<CSV::Row "id":"1" "first name":"taro" "last name":"tanaka" "age":"20">
//}
//emlist[例 読み取り・ブロック指定あり][ruby]{
require "csv"
users =<<-EOS
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,......do |csv|
csv.class # => CSV
csv.first # => #<CSV::Row "id":"1" "first name":"taro" "last name":"tanaka" "age":"20">
end
//}
//emlist[例 書き込み・ブロック指定あり][ruby]{
require "csv"
CSV.open("test.csv", "w") do |csv|
csv << ["id", "first name", "last name", "age"]
csv <<... -
CSV
. open(filename , mode = "rb" , options = Hash . new) {|csv| . . . } -> nil (165.0) -
このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
...同じものを指定できます。
@param options CSV.new のオプションと同じオプションを指定できます。
//emlist[例 読み取り・ブロック指定なし][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,a......V.open("test.csv", headers: true)
csv.class # => CSV
csv.first # => #<CSV::Row "id":"1" "first name":"taro" "last name":"tanaka" "age":"20">
//}
//emlist[例 読み取り・ブロック指定あり][ruby]{
require "csv"
users =<<-EOS
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,......do |csv|
csv.class # => CSV
csv.first # => #<CSV::Row "id":"1" "first name":"taro" "last name":"tanaka" "age":"20">
end
//}
//emlist[例 書き込み・ブロック指定あり][ruby]{
require "csv"
CSV.open("test.csv", "w") do |csv|
csv << ["id", "first name", "last name", "age"]
csv <<... -
CSV
. open(filename , options = Hash . new) -> CSV (165.0) -
このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
...同じものを指定できます。
@param options CSV.new のオプションと同じオプションを指定できます。
//emlist[例 読み取り・ブロック指定なし][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,a......V.open("test.csv", headers: true)
csv.class # => CSV
csv.first # => #<CSV::Row "id":"1" "first name":"taro" "last name":"tanaka" "age":"20">
//}
//emlist[例 読み取り・ブロック指定あり][ruby]{
require "csv"
users =<<-EOS
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,......do |csv|
csv.class # => CSV
csv.first # => #<CSV::Row "id":"1" "first name":"taro" "last name":"tanaka" "age":"20">
end
//}
//emlist[例 書き込み・ブロック指定あり][ruby]{
require "csv"
CSV.open("test.csv", "w") do |csv|
csv << ["id", "first name", "last name", "age"]
csv <<... -
CSV
. open(filename , options = Hash . new) {|csv| . . . } -> nil (165.0) -
このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
...同じものを指定できます。
@param options CSV.new のオプションと同じオプションを指定できます。
//emlist[例 読み取り・ブロック指定なし][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,a......V.open("test.csv", headers: true)
csv.class # => CSV
csv.first # => #<CSV::Row "id":"1" "first name":"taro" "last name":"tanaka" "age":"20">
//}
//emlist[例 読み取り・ブロック指定あり][ruby]{
require "csv"
users =<<-EOS
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,......do |csv|
csv.class # => CSV
csv.first # => #<CSV::Row "id":"1" "first name":"taro" "last name":"tanaka" "age":"20">
end
//}
//emlist[例 書き込み・ブロック指定あり][ruby]{
require "csv"
CSV.open("test.csv", "w") do |csv|
csv << ["id", "first name", "last name", "age"]
csv <<... -
CSV
. instance(data = $ stdout , options = Hash . new) -> CSV (143.0) -
このメソッドは CSV.new のように CSV のインスタンスを返します。 しかし、返される値は Object#object_id と与えられたオプションを キーとしてキャッシュされます。
...このメソッドは CSV.new のように CSV のインスタンスを返します。
しかし、返される値は Object#object_id と与えられたオプションを
キーとしてキャッシュされます。
ブロックが与えられた場合、生成されたインスタンスをブ......か IO のインスタンスを指定します。
@param options CSV.new のオプションと同じオプションを指定できます。
//emlist[例][ruby]{
require "csv"
options = { headers: true }
text =<<-EOS
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,y......umi,adachi,21
EOS
csv = CSV.instance(text, options)
csv2 = CSV.instance(text, options)
csv.object_id == csv2.object_id # => true
print csv.read
# => id,first name,last name,age
# 1,taro,tanaka,20
# 2,jiro,suzuki,18
# 3,ami,sato,19
# 4,yumi,adachi,21
//}
@see CSV.new...