104件ヒット
[1-100件を表示]
(0.052秒)
種類
- 特異メソッド (42)
- インスタンスメソッド (38)
- クラス (12)
- 定数 (12)
ライブラリ
- ビルトイン (44)
- date (36)
-
json
/ add / date (12) -
rubygems
/ specification (12)
クラス
- Date (24)
- DateTime (12)
- Enumerator (6)
-
Gem
:: Specification (12) - Range (38)
検索結果
先頭5件
-
Date
. today(start = Date :: ITALY) -> Date (27407.0) -
現在の日付に相当する日付オブジェクトを生成します。
...現在の日付に相当する日付オブジェクトを生成します。
@param start グレゴリオ暦をつかい始めた日をあらわすユリウス日
//emlist[例][ruby]{
require 'date'
Date.today # => #<Date: 2017-09-20 ...>
//}... -
DateTime
. today(start = Date :: ITALY) -> Date (27401.0) -
このクラスでは利用できません。
...このクラスでは利用できません。
DateTime.now を参照してください。
@param start グレゴリオ暦をつかい始めた日をあらわすユリウス日... -
Gem
:: Specification :: TODAY -> Time (12201.0) -
本日の日付を返します。
本日の日付を返します。 -
Enumerator
. produce(initial = nil) { |prev| . . . } -> Enumerator (6112.0) -
与えられたブロックを呼び出し続ける、停止しない Enumerator を返します。 ブロックの戻り値が、次にブロックを呼び出す時に引数として渡されます。 initial 引数が渡された場合、最初にブロックを呼び出す時にそれがブロック 呼び出しの引数として渡されます。initial が渡されなかった場合は nil が 渡されます。
...duce(1, &:succ)
# next を呼ぶたびランダムな数値を返す Enumerator
Enumerator.produce { rand(10) }
# ツリー構造の祖先ノードを列挙する Enumerator
ancestors = Enumerator.produce(node) { |prev| node = prev.parent or raise StopIteration }
enclosing_section = ancestors.find......ば Enumerable#detect, Enumerable#slice_after, Enumerable#take_while
などと合わせて使えるでしょう。
//emlist[Enumerable のメソッドと組み合わせる例][ruby]{
# 次の火曜日を返す例
require "date"
Enumerator.produce(Date.today, &:succ).detect(&:tuesday?)
# シンプ......ルなレキサーの例
require "strscan"
scanner = StringScanner.new("7+38/6")
PATTERN = %r{\d+|[-/+*]}
Enumerator.produce { scanner.scan(PATTERN) }.slice_after { scanner.eos? }.first
# => ["7", "+", "38", "/", "6"]
//}... -
Date (6006.0)
-
日付だけでなく時刻も扱える Time も利用できます。
...。
=== 簡単なつかいかた
//emlist[例][ruby]{
require 'date'
a = Date.new(1993, 2, 24)
b = Date.parse('1993-02-24')
b += 10
b - a #=> 10
b.year #=> 1993
b.strftime('%a') #=> "Sat"
yesterday = Date.today - 1
//}
=== 用語の定義
いくつか用語の定義は、... -
Date
# to _ json(*args) -> String (3012.0) -
自身を JSON 形式の文字列に変換して返します。
...GeneratorMethods::Hash#to_json を呼び出しています。
@param args 引数はそのまま JSON::Generator::GeneratorMethods::Hash#to_json に渡されます。
//emlist[例][ruby]{
require "json/add/core"
Date.today.to_json
# => "{\"json_class\":\"Date\",\"y\":2018,\"m\":12,\"d\":11,\"sg\":......2299161.0}"
//}
@see JSON::Generator::GeneratorMethods::Hash#to_json... -
Range
. new(first , last , exclude _ end = false) -> Range (124.0) -
first から last までの範囲オブジェクトを生成して返しま す。
...して返しま
す。
exclude_end が真ならば終端を含まない範囲オブジェクトを生
成します。exclude_end 省略時には終端を含みます。
@param first 最初のオブジェクト
@param last 最後のオブジェクト
@param exclude_end 真をセットした場合......合][ruby]{
require 'date'
Range.new(Date.today, Date.today >> 1).each {|d| puts d }
# => 2017-09-16
# 2017-09-17
# ...
# 2017-10-16
//}
//emlist[例: IPアドレスの範囲オブジェクトの場合][ruby]{
require 'ipaddr'
Range.new(IPAddr.new("192.0.2.1"), IPAddr.new("192.0.2.3")).eac......t[例: 自作のオブジェクトの場合][ruby]{
MyInteger = Struct.new(:value) do
def succ
self.class.new(value + 1)
end
def <=>(other)
value <=> other.value
end
def to_s
value.to_s
end
end
Range.new(MyInteger.new(1), MyInteger.new(3)).each {|i| puts i }
# => 1
# 2
#... -
Range
# cover?(obj) -> bool (98.0) -
obj が範囲内に含まれている時に true を返します。
...ます。
Range#include? と異なり <=> メソッドによる演算により範囲内かどうかを判定します。
Range#include? は原則として離散値を扱い、
Range#cover? は連続値を扱います。
(数値については、例外として Range#include? も連続的に扱い......ます。)
Range#exclude_end?がfalseなら「begin <= obj <= end」を、
trueなら「begin <= obj < end」を意味します。
@param obj 比較対象のオブジェクトを指定します。
//emlist[数値は連続的に扱われているため、 include? / cover? が同じ結果を返......'d').include?('d') # => true
('b'..'d').include?('ba') # => false
('b'..'d').cover?('d') # => true
('b'..'d').cover?('ba') # => true
//}
//emlist[Date, DateTime の例][ruby]{
require 'date'
(Date.today - 365 .. Date.today + 365).include?(Date.today) #=> true
(Date.today - 365 .. D... -
Range
# ===(obj) -> bool (42.0) -
始端と終端の中に obj があるとき、true を返します。 そうでないとき、false を返します。
...false
p (60...80) === 79 #=> true
case 79
when 0...60 then puts "low"
when 60...80 then puts "medium" # => medium
when 80..100 then puts "high"
end
//}
2.5 以前は、単純に Range#include? メソッドを内部で呼んでいました。
しかし、2.6 以降では、(文字列を除......][ruby]{
require 'date'
p (Date.today - 100...Date.today + 100).include?(DateTime.now) #=> false
p (Date.today - 100...Date.today + 100).cover?(DateTime.now) #=> true
p (Date.today - 100...Date.today + 100) === DateTime.now #=> true
# 2.5 以前は、=== は、include? と同じく比較......できず false を返していました。
//}
@see d:spec/control#case
@see Range#include?, Range#cover?......//emlist[例][ruby]{
p ('a'..'z').include? 'at' #=> false
p ('a'..'z').cover? 'at' #=> true
p ('a'..'z') === 'at' #=> true
# 2.6 以前は、=== は、include? と同じく比較できず false を返していました。
//}
@see d:spec/control#case
@see Range#include?, Range#cover?... -
Range
# cover?(range) -> bool (28.0) -
2.6 以降の cover? は、Range#include? や Range#=== と異なり、 引数に Range オブジェクトを指定して比較できます。
...2.6 以降の cover? は、Range#include? や Range#=== と異なり、
引数に Range オブジェクトを指定して比較できます。
引数が Range オブジェクトの場合、引数の範囲が self の範囲に含まれる時に true を返します。
@param range 比較対象の......(1..5).cover?(0..6) #=> false
(1..5).cover?(1...6) #=> true
//}
「(a..b).cover?(c...d)」のように終端を含まない Range オブジェクトが引数に渡されており、
「a <= c && b < d」を満たし、cが数値ではない(つまり引数の Range の終端を
求めるた......めに succ メソッドの呼び出しが必要な)場合、パフォーマンスの問題が起きる可能性があります。
//emlist[パフォーマンス上の問題が起きる例][ruby]{
p ('aaaaa'..'zzzzy').cover?('aaaaa'...'zzzzz') # => true
//}
@see Range#include?, Range#===...