Module: Zakuro::Western::DateText

Defined in:
lib/zakuro/era/western/date_text.rb

Overview

DateText 日付文字列

Constant Summary collapse

HYPHEN =

Returns ハイフン区切り.

Returns:

  • (Regexp)

    ハイフン区切り

/^[0-9]{1,5}-[0-9]{1,2}-[0-9]{1,2}$/.freeze
SLASH =

Returns スラッシュ区切り.

Returns:

  • (Regexp)

    スラッシュ区切り

%r{^[0-9]{1,5}/[0-9]{1,2}/[0-9]{1,2}$}.freeze

Class Method Summary collapse

Class Method Details

.validate(text: '') ⇒ True

有効な日付文字列か検証する

* 従来は Date.parse で日付文字列を検証していた
* [貞観4年3月20日] のような文字列でも有効扱いになっていた
* [20] [20日] のように2桁の数字が含まれると有効な日付扱いされる
* 特定のフォーマットのみ受け付けるように改変した

Parameters:

  • text (String) (defaults to: '')

    文字列

Returns:

  • (True)

    有効

  • (True)

    無効



31
32
33
34
35
36
37
# File 'lib/zakuro/era/western/date_text.rb', line 31

def self.validate(text: '')
  return true if HYPHEN.match(text)

  return true if SLASH.match(text)

  false
end