種類
- インスタンスメソッド (320)
- 文書 (41)
クラス
- Enumerator (24)
- IO (186)
- StringIO (62)
-
Zlib
:: GzipReader (48)
キーワード
-
NEWS for Ruby 2
. 0 . 0 (12) -
NEWS for Ruby 3
. 0 . 0 (5) - each (120)
- lines (56)
- next (12)
-
next
_ values (12) -
ruby 1
. 6 feature (12) - 制御構造 (12)
検索結果
先頭5件
-
IO
# each _ line(rs , limit) {|line| . . . } -> self (15112.0) -
IO の現在位置から 1 行ずつ文字列として読み込み、それを引数として 与えられたブロックを実行します。
...指定すると連続する改行を行の区切りとみなします(パラグラフモード)。
@param limit 最大の読み込みバイト数
@raise IOError 自身が読み込み用にオープンされていなければ発生します。
//emlist[例: 引数なし][ruby]{
IO.write("testfile",... -
IO
# each _ line(rs , limit , chomp: false) -> Enumerator (15112.0) -
IO の現在位置から 1 行ずつ文字列として読み込み、それを引数として 与えられたブロックを実行します。
...最大の読み込みバイト数
@param chomp true を指定すると各行の末尾から "\n", "\r", または "\r\n" を取り除きます。
@raise IOError 自身が読み込み用にオープンされていなければ発生します。
//emlist[例: 引数なし][ruby]{
IO.write("testfile",... -
IO
# each _ line(rs , limit , chomp: false) {|line| . . . } -> self (15112.0) -
IO の現在位置から 1 行ずつ文字列として読み込み、それを引数として 与えられたブロックを実行します。
...最大の読み込みバイト数
@param chomp true を指定すると各行の末尾から "\n", "\r", または "\r\n" を取り除きます。
@raise IOError 自身が読み込み用にオープンされていなければ発生します。
//emlist[例: 引数なし][ruby]{
IO.write("testfile",... -
制御構造 (106.0)
-
制御構造 条件分岐: * if * unless * case 繰り返し: * while * until * for * break * next * redo * retry 例外処理: * raise * begin その他: * return * BEGIN * END
...* if
* unless
* case
繰り返し:
* while
* until
* for
* break
* next
* redo
* retry
例外処理:
* raise
* begin
その他:
* return
* BEGIN
* END
Rubyでは(Cなどとは異なり)制御構造は式であって、何らかの値を......定した場合はループの戻り値はその引数になります。
====[a:next] next
//emlist[例][ruby]{
# 空行を捨てるcat
ARGF.each_line do |line|
next if line.strip.empty?
print line
end
//}
文法:
next
next val
nextはもっとも内側のループの......gin
do_something # exception raised
rescue
# handles error
retry # restart from beginning
end
//}
rescue 節以外で retry が用いられた場合には例外 SyntaxError が発生
します。
=== 例外処理
====[a:raise] raise
//emlist[例][ruby]{
raise "you lose" # 例外 RuntimeE... -
Zlib
:: GzipReader # each(rs = $ / ) -> Enumerator (54.0) -
IO クラスの同名メソッドIO#each, IO#each_lineと同じです。
...IO クラスの同名メソッドIO#each, IO#each_lineと同じです。
但し、gzip ファイル中に
エラーがあった場合 Zlib::Error 例外や
Zlib::GzipFile::Error 例外が発生します。
gzip ファイルのフッターの処理に注意して下さい。
gzip ファイルの......字列で指定します。
@raise Zlib::Error Zlib::Error を参照
@raise Zlib::GzipFile::Error Zlib::GzipFile::Errorを参照
@raise Zlib::GzipFile::NoFooter Zlib::GzipFile::NoFooterを参照
@raise Zlib::GzipFile::CRCError Zlib::GzipFile::CRCErrorを参照
@raise Zlib::GzipFile::LengthError Zlib......照
require 'zlib'
=begin
# hoge.gz がない場合は下記で作成できる。
Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
gz.puts 'fuga'
}
=end
Zlib::GzipReader.open('hoge.gz') { |gz|
gz.each { |line|
puts line
}
}
@see IO#each, IO#each_line... -
Zlib
:: GzipReader # each(rs = $ / ) {|line| . . . } -> self (54.0) -
IO クラスの同名メソッドIO#each, IO#each_lineと同じです。
...IO クラスの同名メソッドIO#each, IO#each_lineと同じです。
但し、gzip ファイル中に
エラーがあった場合 Zlib::Error 例外や
Zlib::GzipFile::Error 例外が発生します。
gzip ファイルのフッターの処理に注意して下さい。
gzip ファイルの......字列で指定します。
@raise Zlib::Error Zlib::Error を参照
@raise Zlib::GzipFile::Error Zlib::GzipFile::Errorを参照
@raise Zlib::GzipFile::NoFooter Zlib::GzipFile::NoFooterを参照
@raise Zlib::GzipFile::CRCError Zlib::GzipFile::CRCErrorを参照
@raise Zlib::GzipFile::LengthError Zlib......照
require 'zlib'
=begin
# hoge.gz がない場合は下記で作成できる。
Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
gz.puts 'fuga'
}
=end
Zlib::GzipReader.open('hoge.gz') { |gz|
gz.each { |line|
puts line
}
}
@see IO#each, IO#each_line... -
ruby 1
. 6 feature (42.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...-r~/a -e0
ruby 1.4.6 (2000-08-16) [i686-linux]
"/home/nobu/a.rb"
: ((<String>))#each_line
正しく汚染が伝搬していませんでした。((<ruby-dev:13755>))
"foo\nbar\n".taint.each_line {|v| p v.tainted?}
=> ruby 1.6.4 (2001-06-04) [i586-linux]
false
true......(rb_safe_level() >= 4 && !OBJ_TAINTED(klass)) {
+ if (rb_safe_level() >= 4 && (klass == rb_cObject || !OBJ_TAINTED(klass))) {
rb_raise(rb_eSecurityError, "Insecure: can't define method");
}
if (OBJ_FROZEN(klass)) rb_error_frozen("class/module");
また今度......e error になっていたバグが修正されました。
((<ruby-dev:13073>)), ((<ruby-dev:13292>))
raise "" rescue []
raise "" rescue (p "foo"; true)
raise "" rescue -1
raise "" rescue (-1)
: ((<Thread>))
以下は dead lock にならなくなりました。
Thread.st... -
NEWS for Ruby 2
. 0 . 0 (36.0) -
NEWS for Ruby 2.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...str.lines.with_index(1) {|line, lineno| ... } # str.lines が配列を返すのでもう動かない
str.each_line.with_index(1) {|line, lineno| ... } # このように each_line に置き換える
//}
* IO#lines, IO#chars, IO#codepoints, IO#bytes, ARGF#lines, ARGF#chars,
ARGF#bytes,......gIO#codepoints, StringIO#bytes,
Zlib::GzipReader#lines, Zlib::GzipReader#bytes
* これらのメソッドは非推奨になりました。each_line, each_byte, each_char, each_codepoint を使ってください。
* Proc#==, m:Proc#eql?
* 削除されました。2つの Proc オブジ......m
* openssl
* Consistently raise an error when trying to encode nil values. All instances
of OpenSSL::ASN1::Primitive now raise TypeError when calling to_der on an
instance whose value is nil. All instances of OpenSSL::ASN1::Constructive
raise NoMethodError in the same case.... -
IO
# lines(limit) -> Enumerator (28.0) -
このメソッドは obsolete です。 代わりに IO#each_line を使用してください。
...このメソッドは obsolete です。
代わりに IO#each_line を使用してください。
使用すると警告メッセージが表示されます。
IO の現在位置から 1 行ずつ文字列として読み込み、それを引数として
与えられたブロックを実行しま......空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。
@param limit 最大の読み込みバイト数
@raise IOError 自身が読み込み用にオープンされていなければ発生します。
@see $/, IO#each_line... -
IO
# lines(limit) {|line| . . . } -> self (28.0) -
このメソッドは obsolete です。 代わりに IO#each_line を使用してください。
...このメソッドは obsolete です。
代わりに IO#each_line を使用してください。
使用すると警告メッセージが表示されます。
IO の現在位置から 1 行ずつ文字列として読み込み、それを引数として
与えられたブロックを実行しま......空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。
@param limit 最大の読み込みバイト数
@raise IOError 自身が読み込み用にオープンされていなければ発生します。
@see $/, IO#each_line... -
IO
# lines(rs = $ / ) -> Enumerator (28.0) -
このメソッドは obsolete です。 代わりに IO#each_line を使用してください。
...このメソッドは obsolete です。
代わりに IO#each_line を使用してください。
使用すると警告メッセージが表示されます。
IO の現在位置から 1 行ずつ文字列として読み込み、それを引数として
与えられたブロックを実行しま......空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。
@param limit 最大の読み込みバイト数
@raise IOError 自身が読み込み用にオープンされていなければ発生します。
@see $/, IO#each_line...