created: 2023-09-27T03:18:39.694Z

strftime で憶えると便利な指定子を3種類のLLMに聞いてみた

こんな質問を 3 種類の LLM に投げてみた。

strftime で利用できる変換指定文字のうち、覚えておくと便利なのはどの辺でしょうか? https://linuxjm.osdn.jp/html/LDP_man-pages/man3/strftime.3.html

あなたの学習データ内でよく使われていそうなものをランキングにしてほしいです。 ただし、 %Y-%m-%d %H:%M:%S はすでに知っているのでそれ以外の変換指定文字をランキングしてください。

GitHub Copilot

以下は、私がよく使われていると思われる strftime の変換指定文字のランキングです。

%b: 短縮月名 (Jan, Feb, Mar, ...)
%a: 短縮曜日名 (Sun, Mon, Tue, ...)
%d: 月内の日にち (01, 02, 03, ...)
%m: 月 (01, 02, 03, ...)
%Y: 年 (1970, 1971, ...)
%H: 時 (00, 01, 02, ..., 23)
%M: 分 (00, 01, 02, ..., 59)
%S: 秒 (00, 01, 02, ..., 59)

このランキングは、私が学習データ内でよく見かける順になっています。ただし、実際には使用頻度はプロジェクトや状況によって異なるため、このランキングが常に正しいわけではありません。

ChatGPT(3.5)

理解しました。strftime で便利な変換指定文字のランキングを %Y-%m-%d と %H:%M:%S を除外して作成します。以下がそれになります:

%A - 曜日の完全な名前 (例: Sunday)
%a - 曜日の省略名 (例: Sun)
%B - 月の完全な名前 (例: January)
%b - 月の省略名 (例: Jan)
%d - 月内の日 (01 から 31)
%e - 月内の日 (1 から 31; 一桁の場合は先頭に空白がつく)
%j - 年内の日 (001 から 366)
%m - 月 (01 から 12)
%u - 曜日 (1 から 7; 1 は月曜日, 7 は日曜日)
%w - 曜日 (0 から 6; 0 は日曜日, 6 は土曜日)

これらの変換指定文字は日付と時刻を柔軟にフォーマットするのに役立ちます。質問があればどうぞお知らせください。

BingAI

strftime 関数は、日付や時刻を指定したフォーマットに変換するための関数です。strftime で利用できる変換指定文字は多岐にわたりますが、覚えておくと便利なものをランキングしてみました12345.

%a: 曜日の省略形 (例: 月)
%A: 曜日の完全な形 (例: 月曜日)
%b: 月の省略形 (例: 1月)
%B: 月の完全な形 (例: 1月)
%c: 日付と時刻の表示 (例: 2023年9月27日 12:34:56)
%d: 日付 (01-31)
%j: 年内の日数 (001-366)
%m: 月 (01-12)
%p: AM/PM の表記
%U: 年内の週番号 (00-53)(日曜始まり)
%w: 曜日 (0-6; 0が日曜日)
%W: 年内の週番号 (00-53)(月曜始まり)
%x: ロケールに応じた日付表示
%X: ロケールに応じた時刻表示
%y: 西暦の下2桁 (00-99)
%z: タイムゾーンオフセット (+HHMM もしくは -HHMM)
%%: パーセント記号

これらは一般的によく使われる変換指定文字です。他にも多くの変換指定文字が存在しますが、上記のものを覚えておくと、多くの場面で役立つでしょう。

所感

  • BingAI が一番日本語圏であることを考慮した返答に見える
  • GitHub Copilot Chat は、途中で質問内容を忘れてしまっているようだ
  • %j: 年内の日数 (001-366) は確かにとても便利な場合がありそう
  • %F %T あたりは便利だと思うけどあんまり使われていないのかな

参考

詳解 Terraform 第3版 ―Infrastructure as Codeを実現する
[ad] 詳解 Terraform 第3版 ―Infrastructure as Codeを実現する
Yevgeniy Brikman, 松浦 隼人 (単行本(ソフトカバー))