Class: W3cDatetime
- Inherits:
-
Object
- Object
- W3cDatetime
- Defined in:
- lib/w3c_datetime/w3c_datetime.rb
Overview
Handle W3 Date and Time formats
Handle W3 Date and Time formats as specified in www.w3.org/TR/NOTE-datetime
Class Method Summary collapse
-
.parse(date_str) ⇒ Time
Parse date string in www.w3.org/TR/NOTE-datetime format.
Class Method Details
.parse(date_str) ⇒ Time
Parse date string in www.w3.org/TR/NOTE-datetime format
19 20 21 22 23 24 25 26 |
# File 'lib/w3c_datetime/w3c_datetime.rb', line 19 def self.parse(date_str) date_regexp = /^(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})(?:T(?<hour>\d{2}):(?<minute>\d{2}):?(?<second>\d{2})?\.?(?<milisecond>\d{1,2})?(?:(?<timezone>.+)|Z)?)?$/ parsed = date_regexp.match(date_str) begin Time.new(parsed[:year].to_i, parsed[:month].to_i, parsed[:day].to_i, parsed[:hour].to_i, parsed[:minute].to_i, parsed[:second].to_i, get_timezone(parsed[:timezone])) unless parsed.nil? rescue ArgumentError, TypeError end end |