[#43369] dRuby に CGI を渡す→script_uri が上手く取得出来ない — 石井 大海 <banzaida@...>

こんばんは、konnです。

10 messages 2007/04/05

[ruby-list:43469] Re: Time.parseの仕様変更でしょうか?

From: Tadayoshi Funaba <tadf@...>
Date: 2007-04-30 14:25:20 UTC
List: ruby-list #43469
> rubyの1.8.5では、以下のプログラムは動いていたのですが、
> rubyの1.8.6では動かなくなったようです。
> $ ruby -r time -e 'p Time.parse("04-30 08:00")'
> 
> 以下なら1.8.6でも動くようです。
> $ ruby -r time -e 'p Time.parse("04/30 08:00")'
> 
> これは仕様変更でしょうか?

ParseDate.parsedate('04-30 08:00')

とすればわかりますが、この場合、動いている=エラーにならないだけで、も
ともと三並さんの意図したようには解釈されていません。

parsedate では、もとから月名を用いない (数字のみの) 月日には対応しない
仕様になっていました。例外的にスラッシュで区切るものは有効です。これは
以前の実装を尊重したためです。詳しい仕様は、少し内容が旧いですが、
http://www.funaba.org/date2/parsedate.html にあります。

仕様外のところでの結果に違いがでているのは、最近になって、少し解釈の幅
を広げたためです。スラッシュをつかった日付で年を省略したい場合は、ISO
8601 としても正しい --mm-dd という形式にすれば 1.8.6 では有効です。

In This Thread