別のキーワード
ライブラリ
- ビルトイン (1532)
- abbrev (12)
- logger (36)
- openssl (48)
- optparse (24)
-
rexml
/ document (12) -
rexml
/ streamlistener (12) - stringio (12)
- tsort (46)
クラス
- Array (352)
- BasicObject (12)
-
Encoding
:: Converter (48) -
Enumerator
:: Lazy (117) -
File
:: Stat (12) - Float (59)
- Hash (64)
- Integer (60)
- Logger (24)
-
Logger
:: Formatter (12) - Module (24)
- Numeric (36)
- Object (48)
-
OpenSSL
:: BN (48) - OptionParser (24)
-
REXML
:: DocType (12) - Range (35)
- Regexp (12)
- String (24)
- StringIO (12)
- Struct (38)
- Time (114)
モジュール
- Enumerable (489)
-
REXML
:: StreamListener (12) - TSort (46)
キーワード
- ** (24)
- =~ (12)
- abbrev (12)
- all? (21)
- any? (16)
- chunk (24)
-
class
_ eval (12) - collect (12)
- count (72)
-
datetime
_ format (12) -
datetime
_ format= (24) -
default
_ proc= (12) -
delete
_ if (24) - detect (24)
- divmod (24)
-
each
_ strongly _ connected _ component _ from (23) - entitydecl (12)
-
enum
_ for (24) - environment (12)
- filter (28)
- filter! (28)
- find (24)
-
find
_ all (24) -
find
_ index (36) -
group
_ by (12) - grpowned? (12)
- inspect (6)
-
keep
_ if (43) - load (12)
- map (12)
- max (42)
-
max
_ by (48) -
method
_ missing (12) - min (42)
-
min
_ by (48) - minmax (36)
-
minmax
_ by (24) -
mod
_ add (12) -
mod
_ exp (12) -
mod
_ mul (12) -
mod
_ sub (12) -
module
_ eval (12) - modulo (36)
- none? (7)
- nsec (12)
- one? (21)
- pack (21)
- partition (24)
- pow (24)
-
prev
_ float (11) -
primitive
_ convert (48) - printf (12)
- reject (48)
- reject! (24)
- select (48)
- select! (43)
-
slice
_ after (22) -
slice
_ before (36) -
slice
_ when (11) - sort (24)
-
sort
_ by! (24) - step (21)
- strftime (12)
- subsec (12)
-
to
_ enum (24) -
to
_ h (19) -
to
_ i (12) -
to
_ s (12) -
tsort
_ each (23) -
tv
_ nsec (12) -
tv
_ sec (12) -
tv
_ usec (12) - uniq (12)
- unpack (12)
- usec (12)
-
values
_ at (12) - write (12)
検索結果
先頭5件
-
String
# %(args) -> String (24853.0) -
printf と同じ規則に従って args をフォーマットします。
...printf と同じ規則に従って args をフォーマットします。
args が配列であれば Kernel.#sprintf(self, *args) と同じです。
それ以外の場合は Kernel.#sprintf(self, args) と同じです。
@param args フォーマットする値、もしくはその配列
@retur......列
//emlist[例][ruby]{
p "i = %d" % 10 # => "i = 10"
p "i = %x" % 10 # => "i = a"
p "i = %o" % 10 # => "i = 12"
p "i = %#d" % 10 # => "i = 10"
p "i = %#x" % 10 # => "i = 0xa"
p "i = %#o" % 10 # => "i = 012"
p "%d" % 10 # => "10"
p "%d,%o" % [10, 10] #......"
//}
=== sprintf フォーマット
Ruby の sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、sprintf のすべ... -
Integer
# %(other) -> Numeric (24337.0) -
算術演算子。剰余を計算します。
...算術演算子。剰余を計算します。
//emlist[][ruby]{
13 % 4 # => 1
13 % -4 # => -3
-13 % 4 # => 3
-13 % -4 # => -1
//}
@param other 二項演算の右側の引数(対象)
@return 計算結果... -
Numeric
# %(other) -> Numeric (21365.0) -
self を other で割った余り r を返します。
...self を other で割った余り r を返します。
ここで、商 q と余り r は、
* self == other * q + r
と
* other > 0 のとき 0 <= r < other
* other < 0 のとき other < r <= 0
* q は整数
をみたす数です。
余り r は、other と同じ符号になります......。
商 q は、Numeric#div (あるいは 「/」)で求められます。
modulo はメソッド % の呼び出しとして定義されています。
@param other 自身を割る数を指定します。
//emlist[例][ruby]{
p 13.modulo(4) #=> 1
p (11.5).modulo(3.5) #=> 1.0
p 13.modulo(-4......) #=> -3
p (-13).modulo(4) #=> 3
p (-13).modulo(-4) #=> -1
p (-11).modulo(3.5) #=> 3.0
//}
@see Numeric#divmod, Numeric#remainder... -
Range
# %(s) -> Enumerator (21355.0) -
範囲内の要素を s おきに繰り返します。
...@param s 次のステップへ遷移するたびに加算されるものを指定します。
@return ブロックを指定した時は self を返します。
@return ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence を返します。
@return......他の Range の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10
("a".."f").step(2) {|v| p v}
# => "a"
# "c"
# "e"
(10..0).step(-3) {|v| p v}
# => 10
# 7
# 4
# 1
//}
非数値の Range で......の Range で s に数値を指定した場合を除きます)
//emlist[数値以外の Range に対する例][ruby]{
# Time の Range は each でイテレートできない
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).each { |t| p t }
# => 'Range#each': can't iterate from Time (TypeError)... -
Range
# %(s) -> Enumerator :: ArithmeticSequence (21355.0) -
範囲内の要素を s おきに繰り返します。
...@param s 次のステップへ遷移するたびに加算されるものを指定します。
@return ブロックを指定した時は self を返します。
@return ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence を返します。
@return......他の Range の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10
("a".."f").step(2) {|v| p v}
# => "a"
# "c"
# "e"
(10..0).step(-3) {|v| p v}
# => 10
# 7
# 4
# 1
//}
非数値の Range で......の Range で s に数値を指定した場合を除きます)
//emlist[数値以外の Range に対する例][ruby]{
# Time の Range は each でイテレートできない
(Time.utc(2024, 12, 25)...Time.utc(2024, 12, 26)).each { |t| p t }
# => 'Range#each': can't iterate from Time (TypeError)... -
Float
# %(other) -> Float (21325.0) -
算術演算子。剰余を計算します。
...算術演算子。剰余を計算します。
@param other 二項演算の右側の引数(対象)
//emlist[例][ruby]{
# 剰余
3.0 % 1.2 # => 0.6000000000000001
3.0 % 0.0 # ZeroDivisionError
//}... -
Range
# %(s) -> Enumerator (21313.0) -
範囲内の要素を s おきに繰り返します。
...す。
@param s 各ステップの大きさを数値で指定します。負の数を指定することもできます。
@return ブロックを指定した時は self を返します。
@return ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence......します。
@return ブロックを指定しなかったその他の Range の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10
("a".."f").step(2) {|v| p v}
# => "a"
# "c"
# "e"
(10..0).step(-3) {|v| p v}... -
Range
# %(s) -> Enumerator :: ArithmeticSequence (21313.0) -
範囲内の要素を s おきに繰り返します。
...す。
@param s 各ステップの大きさを数値で指定します。負の数を指定することもできます。
@return ブロックを指定した時は self を返します。
@return ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence......します。
@return ブロックを指定しなかったその他の Range の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
(1..10).step(3) {|v| p v}
# => 1
# 4
# 7
# 10
("a".."f").step(2) {|v| p v}
# => "a"
# "c"
# "e"
(10..0).step(-3) {|v| p v}... -
Enumerable
# partition -> Enumerator (18319.0) -
各要素を、ブロックの条件を満たす要素と満たさない要素に分割します。 各要素に対してブロックを評価して、その値が真であった要素の配列と、 偽であった要素の配列の 2 つを配列に入れて返します。
...要素の配列と、
偽であった要素の配列の 2 つを配列に入れて返します。
ブロックを省略した場合は Enumerator を返します。
//emlist[例][ruby]{
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0].partition {|i| i % 3 == 0 }
#=> [[9, 6, 3, 0], [10, 8, 7, 5, 4, 2, 1]]
//}... -
Enumerable
# partition {|item| . . . } -> [[object] , [object]] (18319.0) -
各要素を、ブロックの条件を満たす要素と満たさない要素に分割します。 各要素に対してブロックを評価して、その値が真であった要素の配列と、 偽であった要素の配列の 2 つを配列に入れて返します。
...要素の配列と、
偽であった要素の配列の 2 つを配列に入れて返します。
ブロックを省略した場合は Enumerator を返します。
//emlist[例][ruby]{
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0].partition {|i| i % 3 == 0 }
#=> [[9, 6, 3, 0], [10, 8, 7, 5, 4, 2, 1]]
//}... -
TSort
# tsort _ each -> Enumerator (18219.0) -
TSort#tsort メソッドのイテレータ版です。 obj.tsort_each は obj.tsort.each と似ていますが、 ブロックの評価中に obj が変更された場合は予期しない結果になる ことがあります。
...
TSort#tsort メソッドのイテレータ版です。
obj.tsort_each は obj.tsort.each と似ていますが、
ブロックの評価中に obj が変更された場合は予期しない結果になる
ことがあります。
tsort_each は nil を返します。
閉路が存在するとき、...... TSort::Cyclic を起こします。
@raise TSort::Cyclic 閉路が存在するとき、発生します.
//emlist[使用例][ruby]{
require 'tsort'
class Hash
include TSort
alias tsort_each_node each_key
def tsort_each_child(node, &block)
fetch(node).each(&block)
end
end
non_sort = {......1=>[2, 3], 2=>[3], 3=>[], 4=>[]}
non_sort.tsort_each {|node|
non_sort.tsort_each_child(node){|child|
printf("%d -> %d\n", node, child)
}
}
# 出力
#=> 2 -> 3
#=> 1 -> 2
#=> 1 -> 3
//}
@see TSort.tsort_each... -
TSort
# tsort _ each {|node| . . . } -> nil (18219.0) -
TSort#tsort メソッドのイテレータ版です。 obj.tsort_each は obj.tsort.each と似ていますが、 ブロックの評価中に obj が変更された場合は予期しない結果になる ことがあります。
...
TSort#tsort メソッドのイテレータ版です。
obj.tsort_each は obj.tsort.each と似ていますが、
ブロックの評価中に obj が変更された場合は予期しない結果になる
ことがあります。
tsort_each は nil を返します。
閉路が存在するとき、...... TSort::Cyclic を起こします。
@raise TSort::Cyclic 閉路が存在するとき、発生します.
//emlist[使用例][ruby]{
require 'tsort'
class Hash
include TSort
alias tsort_each_node each_key
def tsort_each_child(node, &block)
fetch(node).each(&block)
end
end
non_sort = {......1=>[2, 3], 2=>[3], 3=>[], 4=>[]}
non_sort.tsort_each {|node|
non_sort.tsort_each_child(node){|child|
printf("%d -> %d\n", node, child)
}
}
# 出力
#=> 2 -> 3
#=> 1 -> 2
#=> 1 -> 3
//}
@see TSort.tsort_each...