Sha256: 35df12cdd5686c4b65ef63db470dd1e87125139605a270c9e7d644de4dcb785d

Contents?: true

Size: 626 Bytes

Versions: 2

Compression:

Stored size: 626 Bytes

Contents

module KindleManager
  module Parsers
    module Common
      extend ActiveSupport::Concern

      included do
        attr_accessor :fetched_at
      end

      def parse_date(date_text)
        begin
          Date.parse(date_text)
        rescue ArgumentError => e
          m = date_text.match(/(?<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
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
kindle_manager-0.9.0 lib/kindle_manager/parsers/common.rb
kindle_manager-0.8.0 lib/kindle_manager/parsers/common.rb