On Mon, 21 Aug 2006, Peter Krantz wrote:

> Hi!
>
> I am Ruby newbie and have a question regarding Time.parse(). I am
> using Time.parse to scan arbitrary strings for a datetime value. When
> I feed strings that have no datetime value in them Time.parse seems to
> return Time.now.
>
> How can I check if my string has a datetime value in it? I would
> rather have Time.parse return nil if there wasn't any value in the
> string. Right now it seems like I am unable to tell if there was a
> datetime fragment in the string or not. There is no way to say if the
> string contained a datetime value == now or if it was empty.
>
> Example:
>
>> reactor_shutdown = Time.parse("Never")
> => Sun Aug 20 23:05:33 CEST 2006
>
> Regards,
>
> Peter

irb(main):001:0> require 'date'
=> true

irb(main):002:0 reactor_shutdown = DateTime.parse "Never"
ArgumentError: 3 elements of civil date are necessary
         from /home/ahoward//lib/ruby/1.8/date.rb:1214:in `new_with_hash'
         from /home/ahoward//lib/ruby/1.8/date.rb:1258:in `parse'
         from (irb):3

irb(main):003:0> reactor_shutdown = DateTime.parse "2006-00-24"
ArgumentError: invalid date
         from /home/ahoward//lib/ruby/1.8/date.rb:1173:in `civil'
         from /home/ahoward//lib/ruby/1.8/date.rb:1216:in `new_with_hash'
         from /home/ahoward//lib/ruby/1.8/date.rb:1258:in `parse'
         from (irb):4


-a
-- 
to foster inner awareness, introspection, and reasoning is more efficient than
meditation and prayer.
- h.h. the 14th dali lama