ライブラリ
クラス
- Addrinfo (3)
- CSV (1)
- Dir (10)
- IO (2)
-
Net
:: POP3 (1) - Pathname (3)
- Shell (1)
-
Shell
:: CommandProcessor (1) -
Shell
:: Filter (1)
モジュール
- Enumerable (1)
- Kernel (2)
- Syslog (2)
キーワード
-
$ INPUT _ LINE _ NUMBER (1) -
$ NR (1) - CSV (1)
- IO (1)
-
NEWS for Ruby 2
. 4 . 0 (1) - Open3 (1)
- chunk (1)
-
each
_ child (4) -
each
_ entry (1) -
each
_ line (2) - entries (2)
- getaddrinfo (1)
-
net
/ pop (1) - open! (1)
- reopen (1)
検索結果
先頭5件
-
Net
:: POP3 . foreach(address , port = nil , account , password , isapop=false) {|mail| . . . . } -> () (63922.0) -
POP セッションを開始し、 サーバ上のすべてのメールを取りだし、 個々のメールを引数としてブロックを呼びだします。
POP セッションを開始し、
サーバ上のすべてのメールを取りだし、
個々のメールを引数としてブロックを呼びだします。
個々のメールは Net::POPMail のインスタンスで渡されます。
port に nil を渡すと、適当なポート(通常は110、SSL利用時には 995)を
使います。
以下のコードと同様の処理をします。
require 'net/pop'
Net::POP3.start(address, port, account, password, isapop=false) {|pop|
pop.each_mail do |m|
yield m
... -
Shell
:: CommandProcessor # foreach(path = nil , &block) -> () (63718.0) -
pathがファイルなら, File#foreach pathがディレクトリなら, Dir#foreach の動作をします。
pathがファイルなら, File#foreach
pathがディレクトリなら, Dir#foreach
の動作をします。
@param path ファイルもしくはディレクトリのパスを文字列で指定します。
使用例
require 'shell'
Shell.verbose = false
sh = Shell.new
sh.foreach("/tmp"){|f|
puts f
} -
Shell
# foreach(path = nil , &block) -> () (54718.0) -
pathがファイルなら, File#foreach pathがディレクトリなら, Dir#foreach の動作をします。
pathがファイルなら, File#foreach
pathがディレクトリなら, Dir#foreach
の動作をします。
@param path ファイルもしくはディレクトリのパスを文字列で指定します。
使用例
require 'shell'
Shell.verbose = false
sh = Shell.new
sh.foreach("/tmp"){|f|
puts f
} -
Shell
:: Filter # foreach(path = nil , &block) -> () (54718.0) -
pathがファイルなら, File#foreach pathがディレクトリなら, Dir#foreach の動作をします。
pathがファイルなら, File#foreach
pathがディレクトリなら, Dir#foreach
の動作をします。
@param path ファイルもしくはディレクトリのパスを文字列で指定します。
使用例
require 'shell'
Shell.verbose = false
sh = Shell.new
sh.foreach("/tmp"){|f|
puts f
} -
IO
. foreach(path , rs = $ / , chomp: false) -> Enumerator (54697.0) -
path で指定されたファイルの各行を引数としてブロックを繰り返し実行します。 path のオープンに成功すれば nil を返します。
path で指定されたファイルの各行を引数としてブロックを繰り返し実行します。
path のオープンに成功すれば nil を返します。
ブロックが与えられなかった場合は、path で指定されたファイルの各行を繰り返す
Enumerator オブジェクトを生成して返します。
テキスト読み込みメソッドとして動作します。
path が空ファイルの場合、何もせずに nil を返します。
Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
@param path ファイル名を表す文字列か "|コマンド名" を指定します。
@pa... -
IO
. foreach(path , rs = $ / , chomp: false) {|line| . . . } -> nil (54697.0) -
path で指定されたファイルの各行を引数としてブロックを繰り返し実行します。 path のオープンに成功すれば nil を返します。
path で指定されたファイルの各行を引数としてブロックを繰り返し実行します。
path のオープンに成功すれば nil を返します。
ブロックが与えられなかった場合は、path で指定されたファイルの各行を繰り返す
Enumerator オブジェクトを生成して返します。
テキスト読み込みメソッドとして動作します。
path が空ファイルの場合、何もせずに nil を返します。
Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
@param path ファイル名を表す文字列か "|コマンド名" を指定します。
@pa... -
Dir
. foreach(path) -> Enumerator (54649.0) -
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX 失敗した場合に発生します。
//... -
Dir
. foreach(path) {|file| . . . } -> nil (54649.0) -
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX 失敗した場合に発生します。
//... -
Dir
. foreach(path , encoding: Encoding . find("filesystem")) -> Enumerator (54649.0) -
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX 失敗した場合に発生します。
//... -
Dir
. foreach(path , encoding: Encoding . find("filesystem")) {|file| . . . } -> nil (54649.0) -
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX 失敗した場合に発生します。
//... -
CSV
. foreach(path , options = Hash . new) {|row| . . . } -> nil (54640.0) -
このメソッドは CSV ファイルを読むための主要なインターフェイスです。 各行が与えられたブロックに渡されます。
このメソッドは CSV ファイルを読むための主要なインターフェイスです。
各行が与えられたブロックに渡されます。
//emlist[例][ruby]{
require 'csv'
# UTF-32BE な CSV ファイルを読み込んで UTF-8 な row をブロックに渡します
CSV.foreach("a.csv", encoding: "UTF-32BE:UTF-8"){|row| p row }
//}
@param path CSV ファイルのパスを指定します。
@param options CSV.new のオプションと同じオプションを指定できます。
... -
Addrinfo
. foreach(nodename , service , family=nil , socktype=nil , protocol=nil , flags=0) -> Enumerator (54607.0) -
Addrinfo.getaddrinfo で得られる配列の各要素を繰り返します。
Addrinfo.getaddrinfo で得られる配列の各要素を繰り返します。
ブロックを省略した場合は Enumerator を返します。
@param nodename ノード名文字列(ホスト名もしくは IP アドレス)
@param service サービス名(文字列もしくはポート番号の整数)
@param family プロトコルファミリー(整数、文字列、シンボル、もしくは nil)
@param socktype ソケットタイプ(整数、文字列、シンボル、もしくは nil)
@param protocol プロトコル(整数、もしくは nil)
@param flags フラグ(... -
Addrinfo
. foreach(nodename , service , family=nil , socktype=nil , protocol=nil , flags=0) {|addrinfo| . . . } -> [Addrinfo] (54607.0) -
Addrinfo.getaddrinfo で得られる配列の各要素を繰り返します。
Addrinfo.getaddrinfo で得られる配列の各要素を繰り返します。
ブロックを省略した場合は Enumerator を返します。
@param nodename ノード名文字列(ホスト名もしくは IP アドレス)
@param service サービス名(文字列もしくはポート番号の整数)
@param family プロトコルファミリー(整数、文字列、シンボル、もしくは nil)
@param socktype ソケットタイプ(整数、文字列、シンボル、もしくは nil)
@param protocol プロトコル(整数、もしくは nil)
@param flags フラグ(... -
Kernel
$ $ INPUT _ LINE _ NUMBER -> Integer (18337.0) -
$. の別名
$. の別名
1 e
2 f
3 g
4 h
5 i
# end of a.txt
require "English"
File.foreach(ARGV.at(0)){|line|
# read line
}
p $INPUT_LINE_NUMBER
# end of sample.rb
ruby sample.rb a.txt
#=> 5 -
Syslog
. # open!(ident= $ 0 , options=Syslog :: LOG _ PID|Syslog :: LOG _ CONS , facility=Syslog :: LOG _ USER) { |syslog| . . . } -> self (18319.0) -
開いていた syslog を最初にクローズする点を除いてSyslog.#open と同じです。
開いていた syslog を最初にクローズする点を除いてSyslog.#open と同じです。
@param ident すべてのログにつく識別子で、どのプログラムから送られ
たログなのかを識別するために使われる文字列を指定します。
指定しない場合はプログラム名が使われます。
@param options Syslog.open や Syslog.log の動作を制御するフラグを指定します。
指定しない場合は、Syslog::LOG_PID|Syslog::LOG_CONSの値が使われ
... -
Syslog
. # reopen(ident= $ 0 , options=Syslog :: LOG _ PID|Syslog :: LOG _ CONS , facility=Syslog :: LOG _ USER) { |syslog| . . . } -> self (18319.0) -
開いていた syslog を最初にクローズする点を除いてSyslog.#open と同じです。
開いていた syslog を最初にクローズする点を除いてSyslog.#open と同じです。
@param ident すべてのログにつく識別子で、どのプログラムから送られ
たログなのかを識別するために使われる文字列を指定します。
指定しない場合はプログラム名が使われます。
@param options Syslog.open や Syslog.log の動作を制御するフラグを指定します。
指定しない場合は、Syslog::LOG_PID|Syslog::LOG_CONSの値が使われ
... -
Open3 (18019.0)
-
プログラムを実行し、そのプロセスの標準入力・標準出力・ 標準エラー出力にパイプをつなぎます。
プログラムを実行し、そのプロセスの標準入力・標準出力・
標準エラー出力にパイプをつなぎます。
=== 使用例
nroff を実行してその標準入力に man ページを送り込み処理させる。
nroff プロセスの標準出力から処理結果を受け取る。
require "open3"
stdin, stdout, stderr = *Open3.popen3('nroff -man')
# こちらから書く
Thread.fork {
File.foreach('/usr/man/man1/ruby.1') do |line|
stdin.print line
... -
net
/ pop (18019.0) -
このライブラリは、POP3 (Post Office Protocol version 3) を 用いてPOPサーバからメールを受信する機能を提供するライブラリです。
このライブラリは、POP3 (Post Office Protocol version 3) を
用いてPOPサーバからメールを受信する機能を提供するライブラリです。
POP3 の実装は 1939 に基いています。
2449 で定義されているPOP3拡張には対応していません。
=== 使用例
==== メールの受信
以下のコードは、メールを受信してファイル 'inbox/1' 'inbox/2'... に
書きこみ、サーバ上からメールを消します。
'pop.example.com' は適当なPOP3のサーバのホスト名に、
'YourAccount' と 'YourPassword' ... -
Pathname
# each _ entry {|pathname| . . . } -> nil (9385.0) -
Dir.foreach(self.to_s) {|f| yield Pathname.new(f) } と同じです。
Dir.foreach(self.to_s) {|f| yield Pathname.new(f) } と同じです。
//emlist[例][ruby]{
require "pathname"
Pathname("/usr/local").each_entry {|f| p f }
# => #<Pathname:.>
# => #<Pathname:..>
# => #<Pathname:bin>
# => #<Pathname:etc>
# => #<Pathname:include>
# => #<Pathname:lib>
# => #<Pathname:opt>
//}
@... -
Pathname
# each _ line(*args) -> Enumerator (9139.0) -
IO.foreach(self.to_s, *args, &block) と同じです。
IO.foreach(self.to_s, *args, &block) と同じです。
//emlist[例][ruby]{
require "pathname"
IO.write("testfile", "line1\nline2,\nline3\n")
Pathname("testfile").each_line
# => #<Enumerator: IO:foreach("testfile")>
//}
//emlist[例 ブロックを指定][ruby]{
require "pathname"
IO.write("testfile", "line1\nline2,\nline3\... -
Pathname
# each _ line(*args) {|line| . . . } -> nil (9139.0) -
IO.foreach(self.to_s, *args, &block) と同じです。
IO.foreach(self.to_s, *args, &block) と同じです。
//emlist[例][ruby]{
require "pathname"
IO.write("testfile", "line1\nline2,\nline3\n")
Pathname("testfile").each_line
# => #<Enumerator: IO:foreach("testfile")>
//}
//emlist[例 ブロックを指定][ruby]{
require "pathname"
IO.write("testfile", "line1\nline2,\nline3\... -
Kernel
$ $ NR -> Integer (9037.0) -
$. の別名
$. の別名
1 e
2 f
3 g
4 h
5 i
# end of a.txt
require "English"
File.foreach(ARGV.at(0)){|line|
# read line
}
p $INPUT_LINE_NUMBER
# end of sample.rb
ruby sample.rb a.txt
#=> 5 -
Dir
. each _ child(path) -> Enumerator (337.0) -
ディレクトリ path の "." と ".." をのぞく各エントリを表す文字列を引数として、 ブロックを評価します。
ディレクトリ path の "." と ".." をのぞく各エントリを表す文字列を引数として、
ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX ... -
Dir
. each _ child(path) {|file| . . . } -> nil (337.0) -
ディレクトリ path の "." と ".." をのぞく各エントリを表す文字列を引数として、 ブロックを評価します。
ディレクトリ path の "." と ".." をのぞく各エントリを表す文字列を引数として、
ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX ... -
Dir
. each _ child(path , encoding: enc) -> Enumerator (337.0) -
ディレクトリ path の "." と ".." をのぞく各エントリを表す文字列を引数として、 ブロックを評価します。
ディレクトリ path の "." と ".." をのぞく各エントリを表す文字列を引数として、
ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX ... -
Dir
. each _ child(path , encoding: enc) {|file| . . . } -> nil (337.0) -
ディレクトリ path の "." と ".." をのぞく各エントリを表す文字列を引数として、 ブロックを評価します。
ディレクトリ path の "." と ".." をのぞく各エントリを表す文字列を引数として、
ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX ... -
Addrinfo
. getaddrinfo(nodename , service , family=nil , socktype=nil , protocol=nil , flags=0) -> [Addrinfo] (319.0) -
パラメータから複数の Addrinfo オブジェクトを生成し、その配列を返します。
パラメータから複数の Addrinfo オブジェクトを生成し、その配列を返します。
nodename (ホスト名) と service (ポート番号) を Addrinfo に変換します。
変換先は一意ではないため、複数のオブジェクトを返します。
nodename と service のどちらか一方は nil を渡すことができます
(その部分は変換されません)。
family, socktype, protocol には希望する方式のヒントを与えます。
例えば、SOCK_STREAM なソケットが必要な場合には socktype に指定します。
nil を指定した場合には制限しないことを... -
Dir
. entries(path) -> [String] (319.0) -
ディレクトリ path に含まれるファイルエントリ名の 配列を返します。
ディレクトリ path に含まれるファイルエントリ名の
配列を返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX 失敗した場合に発生します。
//emlist[例][ruby]{
Dir.entries('.') #=> [".", "..", "bar", "foo"]
... -
Dir
. entries(path , encoding: Encoding . find("filesystem")) -> [String] (319.0) -
ディレクトリ path に含まれるファイルエントリ名の 配列を返します。
ディレクトリ path に含まれるファイルエントリ名の
配列を返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX 失敗した場合に発生します。
//emlist[例][ruby]{
Dir.entries('.') #=> [".", "..", "bar", "foo"]
... -
CSV (109.0)
-
このクラスは CSV ファイルやデータに対する完全なインターフェイスを提供します。
このクラスは CSV ファイルやデータに対する完全なインターフェイスを提供します。
=== 読み込み
//emlist[][ruby]{
require "csv"
csv_text = <<~CSV_TEXT
Ruby,1995
Rust,2010
CSV_TEXT
IO.write "sample.csv", csv_text
# ファイルから一行ずつ
CSV.foreach("sample.csv") do |row|
p row
end
# => ["Ruby", "1995"]
# ["Rust", "2010"]
# ファイルから一度に
p CSV.r... -
IO (109.0)
-
基本的な入出力機能のためのクラスです。
基本的な入出力機能のためのクラスです。
File::Constants は、File から IO へ移動しました。
===[a:m17n] 多言語化と IO のエンコーディング
IO オブジェクトはエンコーディングを持ちます。
エンコーディングの影響を受けるメソッドと受けないメソッドがあります。
影響を受けるメソッドでは、IO のエンコーディングに従い読み込まれた文字列のエンコーディングが決定されます。
また IO のエンコーディングを適切に設定することにより、読み込み時・書き込み時に文字列のエンコーディングを
変換させることもできます。
==== エンコーディングの影響を受けるメ... -
Enumerable
# chunk {|elt| . . . } -> Enumerator (55.0) -
要素を前から順にブロックで評価し、その結果によって 要素をチャンクに分けた(グループ化した)要素を持つ Enumerator を返します。
要素を前から順にブロックで評価し、その結果によって
要素をチャンクに分けた(グループ化した)要素を持つ
Enumerator を返します。
ブロックの評価値が同じ値が続くものを一つのチャンクとして
取り扱います。すなわち、ブロックの評価値が一つ前と
異なる所でチャンクが区切られます。
返り値の Enumerator は各チャンクのブロック評価値と
各チャンクの要素を持つ配列のペアを各要素とします。
そのため、eachだと以下のようになります。
//emlist[][ruby]{
enum.chunk {|elt| key }.each {|key, ary| do_something ... -
NEWS for Ruby 2
. 4 . 0 (55.0) -
NEWS for Ruby 2.4.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.4.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 2.3.0 以降の変更
=== 言語仕様の変更
* 条件式での多重代入ができるようになりました 10617
* Symbol#to_proc でメソッド呼び出し元での Refinements が有効になりました 9451
* Ob...