Module: KindleManager::Parsers::Common

Extended by:
ActiveSupport::Concern
Included in:
BooksParser::BookRow, HighlightsParser::BookWithNote
Defined in:
lib/kindle_manager/parsers/common.rb

Instance Method Summary collapse

Instance Method Details

#parse_date(date_text) ⇒ Object



10
11
12
13
14
15
16
17
18
19
# File 'lib/kindle_manager/parsers/common.rb', line 10

def parse_date(date_text)
  begin
    Date.parse(date_text)
  rescue ArgumentError => e
    m = date_text.match(/\A(?<year>\d{4})年(?<month>\d{1,2})月(?<day>\d{1,2})日/)
    m = date_text.match(/(?<month>\d{1,2})月\D+(?<day>\d{1,2}),\D+(?<year>\d{4})/) if m.nil?
    raise("Failed to parse date [#{date_text}]") if m.nil?
    Date.new(m[:year].to_i, m[:month].to_i, m[:day].to_i)
  end
end