dポイントプレゼントキャンペーン実施中!

perlにて、現在の年月から、3ヶ月まえの年月を
求めたいのですが、苦戦しております。

Date::Calcモジュールを使って、うまくできそうなんですが、悩んでいます。

回答、よろしくお願い致します。

A 回答 (2件)

Date::Calcを使うなら



use Date::Calc qw(:all);
($year,$month,$day) = Add_Delta_YM(Today(),0,-3);
    • good
    • 0
この回答へのお礼

ありがとうございます。
迅速な回答、ありがとうございました。

お礼日時:2004/05/28 18:33

Date::Calc ではありませんが(^^;)



print month_add("2004/5/28", -3). "\n";
exit;

sub month_add {
my($ymd, $plus) = @_;
my($y, $m, $d) = split('/', $ymd);

$m += $plus;
while ($m > 12) {
$y++;
$m = 1;
}
while ($m < 1) {
$y--;
$m = 12;
}

$ymd = join('/', $y, $m, $d);
($ymd);
}

こんな感じでもできます。
ただ。日の正規化をどうするのか書かれていないので、やっていません。
    • good
    • 0
この回答へのお礼

ありがとうございます。
モジュールを使わなくても、できるんですね。
勉強になりました。

お礼日時:2004/05/28 18:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!