[C#] 날짜 형식 검사하기

입력받은 문자열이 날짜 형식인지 체크해보는 함수 입니다.

입력 문자열은 YYYYMMDD 또는 YYYY-MM-DD.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
/// <summary>
/// 날짜 문자열이 YYYYMMDD 형식인지 검사한다.
/// </summary>
/// <param date="YYYYMMDD or YYYY-MM-DD"></param>
/// <returns></returns>
public static bool isDate(string date)
{
bool result = false;
result = Regex.IsMatch(date, @"^(19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[0-1])$");
if (!result) result = Regex.IsMatch(date, @"^(19|20)\d{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[0-1])$");
return result;
}
/// <summary> /// 날짜 문자열이 YYYYMMDD 형식인지 검사한다. /// </summary> /// <param date="YYYYMMDD or YYYY-MM-DD"></param> /// <returns></returns> public static bool isDate(string date) { bool result = false; result = Regex.IsMatch(date, @"^(19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[0-1])$"); if (!result) result = Regex.IsMatch(date, @"^(19|20)\d{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[0-1])$"); return result; }
/// <summary>
/// 날짜 문자열이 YYYYMMDD 형식인지 검사한다.
/// </summary>
/// <param date="YYYYMMDD or YYYY-MM-DD"></param>
/// <returns></returns>
public static bool isDate(string date)
{
    bool result = false;

    result = Regex.IsMatch(date, @"^(19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[0-1])$");

    if (!result) result = Regex.IsMatch(date, @"^(19|20)\d{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[0-1])$");
   
    return result;
}