指定した文字列が、時刻文字列形式かどうかチェックするFunctionです。
サンプルFunction
例)時刻文字列形式(HH:mm:ss形式)かどうかチェックするFunction
/// <summary>
/// 時刻文字列形式かどうかチェックするFunction
/// </summary>
/// <param name="val">対象文字列</param>
/// <returns>true:時刻文字列 false:時刻文字列ではない</returns>
public static bool isTimeString(string val)
{
string fmt = "HH:mm:ss";
CultureInfo ci = CultureInfo.CurrentCulture;
DateTimeStyles dts = DateTimeStyles.None;
DateTime dt;
return DateTime.TryParseExact(val, fmt, ci, dts, out dt);
}
8行目にチェックしたい時刻文字列の形式を指定してください。
使用例
結果はbool型で返ります
bool b = isTimeString("23:59:59");
→True //正しい時刻文字列なのでTrueです。
bool b = isTimeString("23:59:60");
→False //60秒は存在しないのでFalseになります。
bool b = isTimeString("24:59:59");
→False //24時は存在しないのでFalseになります。
bool b = isTimeString("abc");
→False //文字列なのでFalseになります。
備考
- チェックしたい時刻形式を変更したい場合は8行目のフォーマット文字列を変更してください。
- フォーマット文字列は以下記事を参考にしてください。
→ [C#] 日時書式フォーマット一覧