Try different formats : DateTime « Date « Ruby






Try different formats


require 'date'

TRY_FORMATS = ['%d/%m/%y', '%Y %m %d']

def try_to_parse(s)
  parsed = nil
  TRY_FORMATS.each do |format|
    begin
      parsed = Date.strptime(s, format)
      break
    rescue ArgumentError
    end
  end
  return parsed
end

puts try_to_parse('1/10/07').to_s            # => "2007-10-01"
puts try_to_parse('2007 1 10').to_s          # => "2007-01-10"

 








Related examples in the same category

1.Create DateTime object with new method
2.Time zero for the date library:
3.The current date and time:
4.DateTime offset
5.Compare Time and DateTime
6.DateTime.civil
7.require 'date'
8.DateTime.parse
9.DateTime.strptime with format '%m-%d-%Y %H:%M:%S %Z'
10.DateTime.strptime with format '%m-%d-%Y %I:%M:%S %p'
11.Offset a date
12.Local offset
13.Convert local (Eastern) time to Pacific time
14.Converting Between Time and DateTime Objects
15.Add week to Date and Time