Ruby: 文字列が有効な時刻かどうかを確認するにはどうすればよいですか?
概要
制御できないフィードからデータを取得しているので、指定された文字列が有効な時刻であるかどうかを確認する必要があります。
ほとんどの場合、「2:35」または「15:41」のようなものが正しく送信されますが、「AM」または「PM」のようなもの (数字は含まれない) の場合もあります…したがって、最終的には無視する必要があります。それらの。
では、データが有効な時刻であるかどうかを確認するにはどうすればよいでしょうか?
解決策
有効な時間と想定される時間を正確に指定していないため (オプションの秒を受け入れるかどうかなど)、ここでは 1 つの推測を示します。
date =~ /^([01]?[0-9]|2[0-3])\:[0-5][0-9]$/