入力月と年を私に与えることができるPerlモジュールがあります。今年の今月の最後の日は何ですか?この例では、6月には常に30日があるため、最後の日は30-06-2005になるため、簡単です。しかし、2月はそうではありません。だから、もし私が02-1997を持っていれば、28-02-1997か29-02-1997を返すかどうかを知りたいです。前もって感謝します。指定された月と特定の年の特定の日を見つけよう
0
A
答えて
0
はい、Days_in_Month
というサブルーティンがDate::Calc
モジュールにあります。
use strict;
use warnings;
use Date::Calc qw/Days_in_Month/;
for my $m (1 .. 12) {
print Days_in_Month(2005, $m), "\n";
}
OUTPUT
31
28
31
30
31
30
31
31
30
31
30
31
0
与えられた月の最後の日は次の月の "0番" の日です。 mktime()は、0ベースの月と1900年の年の番号を取り、エポックタイムスタンプを返します。
use POSIX qw(mktime strftime);
sub last_day {
my ($year, $mon) = @_;
return mktime(0,0,0, 0, $mon, $year-1900);
}
あなたはlocaltime
またはstrftime
にそれを渡すことができます。
say scalar localtime last_day(2005, 5)
'Tue May 31 00:00:00 2005'
say scalar localtime last_day(2005, 6)
'Thu Jun 30 00:00:00 2005'
say scalar localtime last_day(1997, 2)
'Fri Feb 28 00:00:00 1997'
say scalar localtime last_day(2012, 2)
'Wed Feb 29 00:00:00 2012'
say (localtime last_day(1997, 2))[3]
'28'
say strftime "%d", localtime last_day(1997, 2)
'28'
0
他の人がDateTime
を使用し、言ったように:
use DateTime;
my $dt = DateTime->last_day_of_month('year'=>2000, 'month'=>2);
print $dt->ymd; # '2000-02-29'
DateTimeの日付/時刻を処理するための最速のモジュールではないかもしれないが、それは間違いなく最も完全な一つです。それは、日付/時刻の数学のさまざまな癖を正しく処理する唯一のものです。
関連する問題
- 1. 指定された月と年の最終日の名前を見つける
- 2. 指定された月と年のデータフレームのサブセットの設定
- 3. 日付範囲の間の特定の月の日付を見つける
- 4. ジャンゴ、日付範囲の指定された月と年によってフィルタ
- 5. Java - 毎年特定の月の前
- 6. JavaScript:特定の年の月の日数を計算する
- 7. 特定の月/年の最初の日を取得する
- 8. 特定の日付の曜日を見つける
- 9. 特定の日付、日/年/年形式のカウントダウンを表示
- 10. 特定の月の毎日の値(または数ヶ月間)
- 11. 特定の空白を見つける?
- 12. Eclipseプラグイン:特定のコマンドのアクティブなハンドラを見つけよう
- 13. Android特定のBluetoothデバイスのUUIDを見つけよう
- 14. 年月日の設定日時
- 15. 特定の日付の間の日数と月数の検索
- 16. 月と年だけの日付を書式設定するR
- 17. CanCan - 特定のクラスの未定義のメソッドを見つける
- 18. Extract日時フィールドから日、月、年を指定します。
- 19. 今年の特定の日付から曜日名を見つける方法は?
- 20. 特定の深さのすべてのリンクを見つける
- 21. 特定年のパンダ選択
- 22. 日付ピッカーの特定の月の表示日のみ
- 23. 年、月、日で日の名前を見つける
- 24. 月の特定のクエリMongodbとlaravel
- 25. 再帰的にdir()特定の型または特定の値の値を見つけるためのPythonオブジェクト
- 26. 特定の月と年が与えられた月の日数を取得するにはどうすればよいですか?
- 27. PERFORCE:指定されたソースを持つブランチを見つける
- 28. 特定のノードを見つけた後にノードを探す
- 29. SASは年齢から生年月日を見つけます
- 30. HtmlElement(Collection)とウェブブラウザで特定のデータを見つける
[DateTime](http://datetime.perl.org)プロジェクトを見てください。 –