安井と申します。
先日届いたメールで、Date:フィールドのところが
"Thu, 09 Dec 1999 21:29:33 +0-1200"となっているものがありまして、まあ、
この書式はおかしいと思うのですが、これをParseDate::parsedateにかけると
yearが1200年になってしまいます。
で、ちょっとパッチをあててみました。
「書式がおかしいんだから当たり前」と言えるかもしれませんが、間違った
値が返されるよりは良いかと思いますが、いかがでしょう?
+++ parsedate.rb
@@ -67,10 +67,12 @@
mon = MONTHS[$2.downcase]
year = $3.to_i
end
+ if !defined?(year) or !year
if date.sub!(/\d{4}/i, ' ')
year = $&.to_i
elsif date.sub!(/\d\d/i, ' ')
year = $&.to_i
+ end
end
if guess and year
if year < 100
--
「臆病者には勝利の女神は微笑まない」
YASUI Kentarow <kenyasui / alles.or.jp> http://www.alles.or.jp/~kenyasui/