POSIXモジュールのstrftime
UNIX系標準仕様の関数を、Perlでも使えるようにするPOSIXモジュール。その中でもstrftime関数は、日付や時刻を特定のフォーマットで出力したい時の選択肢のひとつです。
が、Windows人としては、POSIXと言われてもリファレンスが無いと分からないです。ということで、strftimeのフォーマットの指定方法のメモです。
モジュールの使い方
useするときは関数名を指定して読み込む
use POSIX qw(strftime); # 現在の日付・時刻を、取得 my $datetime = strftime("%a, %d %b %Y %H:%M:%S %z", localtime());
[ ページ先頭へ ]
フォーマットの指定方法
%Y | 西暦4桁 |
---|---|
%C | 西暦の上2桁(世紀) |
%y | 西暦の下2桁 |
%m | 月(1~9月は1桁目に0) |
%b | 月名の省略形 |
%h | %bと同じ |
%B | 月名 |
%d | 日(1~9日は1桁目に0) |
%e | 日(1~9日は1桁目にスペース) |
%a | 曜日の省略名 |
%A | 曜日 |
%u | 週の何番目の日か(1~7、1=月曜) |
%w | 週の何番目の日か(0~6、0=日曜) |
%H | 時(24時間表記、0~9時は1桁目に0) |
---|---|
%k | 時(24時間表記、0~9時は1桁目にスペース) |
%I | 時(12時間表記、0~9時は1桁目に0) |
%l | 時(12時間表記、0~9時は1桁目にスペース) |
%p | その地域でのAM/PMに相当する文字列(正午はPM、真夜中はAM) |
%P | %pと同じ内容を小文字で(am/pmなど) |
%M | 分(0~9分は1桁目に0) |
%S | 秒(0~9秒は1桁目に0、閏秒時は60) |
%z | GMTへのオフセット時間(RFC 822形式のとき使う) |
%Z | タイムゾーン |
%c | その地域で一般的な日付・時刻 |
---|---|
%x | その地域で一般的な日付(時刻含まず) |
%X | その地域で一般的な時刻(日付含まず) |
%D | %m/%d/%yと同じ |
%F | ISO 8601形式の日付 %Y-%m-%dと同じ |
%r | 12時間表記の時間 %I:%M:%S %pと同じ |
%T | 24時間表記の時間 %H:%M:%Sと同じ |
%R | 24時間表記の時間、秒除く %H:%Mと同じ |
%s | エポック秒 |
---|---|
%j | 年日(001~366) |
%U | 年週(00~53、その年の最初の日曜から01週) |
%W | 年週(00~53、その年の最初の月曜から01週) |
%V | 年週(00~53、その年の4日以上含まれる最初の週の月曜から01週、ISO 8601:1988 形式) |
%G | 西暦4桁(ISO 8608形式の年週が前年・翌年になる場合はその年) |
%g | 西暦の下2桁(ISO 8608形式の年週が前年・翌年になる場合はその年) |
%n | 改行 |
%t | タブ |
置き換え文字以外は、そのまま文字として返される。
最終更新日:2010/05/30
[ ページ先頭へ ]