日付を文字列に変換する

Elixir:
日付を文字列に変換する

How to (方法)

# Elixirの内蔵ライブラリを使った日付を文字列に変換
date = ~D[2023-04-05]
formatted_date = to_string(date)

IO.puts(formatted_date) # 出力: "2023-04-05"

# カスタムフォーマットを使用する
custom_format = "{YYYY}-{M}-{D}"
custom_formatted_date = Date.to_string(date, custom_format)

IO.puts(custom_formatted_date) # 出力: "2023-4-5"

デフォルトではISO8601形式ですが、カスタムフォーマットも利用できます。

Deep Dive (深い潜在)

Elixirの日付と文字列変換は、Erlangのカレンダー機能に基づいています。現代のElixirバージョンでは、Dateモジュールを使用して簡単に日付を文字列へ(その逆も)変換できます。

以前のバージョンでは、外部ライブラリに依存する必要がありましたが、現在は標準ライブラリで完結しています。Date.to_string/1関数はISO8601フォーマットを使い、Date.to_string/2はカスタム形式を受け入れます。フォーマト指定子は {YYYY}, {M}, {D} のように使われ、それぞれ年、月、日を表します。

また、自然言語処理ライブラリやカスタムの日付関連ライブラリを使用することも可能です。これらはより高度なパターンや言語の特性に基づくフォーマットを提供しますが、ほとんどの基本的な用途にはElixirの標準機能で十分です。

See Also (関連情報)