Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】DateTime::strptime()メソッドの使い方

strptimeメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

strptimeメソッドは、指定された日付と時刻を表す文字列を解析し、DateTimeオブジェクトを生成するメソッドです。このメソッドは、日付時刻の文字列と、その文字列がどのような形式で記述されているかを示すフォーマット文字列の二つの引数を受け取ります。フォーマット文字列は、例えば「2023-10-27 15:30:00」のような文字列に対して、「%Y-%m-%d %H:%M:%S」のように、文字列中の各要素(年、月、日、時、分、秒など)がどのように表現されているかを正確に指示するために用います。

これにより、システムが異なる形式で出力するログファイルの日付や、外部から受け取るデータに含まれる多様な形式の日付時刻情報を、Rubyのプログラム内でDateTimeオブジェクトとして一貫性を持って処理できるようになります。例えば、ウェブアプリケーションでユーザーが入力した日付や、外部APIからの応答に含まれるタイムスタンプなどを、内部で扱うDateTime型に変換する際にこのメソッドが活用されます。もし提供された文字列が指定されたフォーマットと一致しない場合、このメソッドは解析に失敗し、エラーを発生させる可能性があります。したがって、正確なフォーマット指定が非常に重要です。DateTime.strptimeメソッドは、文字列形式の日付時刻データを安全かつ柔軟にRubyのDateTimeオブジェクトに変換するための、非常に強力で基本的な機能の一つです。

構文(syntax)

1require 'date'
2
3datetime_object = DateTime.strptime('2023/01/15 10:30', '%Y/%m/%d %H:%M')

引数(parameters)

date, format, start = Date::ITALY

  • date: DateTimeオブジェクトに変換したい日付を表す文字列
  • format: date文字列のフォーマットを指定する文字列 (strftimeのフォーマットコードを使用)
  • start = Date::ITALY: 曜日計算の基準となる日付 (デフォルトはDate::ITALY)

戻り値(return)

DateTime

指定されたフォーマット文字列と対応する時刻情報から、新しいDateTimeオブジェクトを生成して返します。

関連コンテンツ