日付フィールドがあり、形式は「dd-My」です。たとえば、2013 年 1 月 1 日です。まず、「dd-My」である必要がある形式を確認したいと思います。次に、日付が過去であってはならず、今日以降であってもかまいません。
どうすればいいですか?正規表現を使いたいのですが、どの表現が適切かわかりません。
DateTime.TryParseExact
DateTime を検証するには、正規表現を使用するのではなく、使用する必要があります
string testDate = "01-Jan-2013";
DateTime temp;
if (DateTime.TryParseExact(testDate,
"dd-MMM-yyyy",
CultureInfo.InvariantCulture,
DateTimeStyles.None,
out temp) &&
(temp > DateTime.Today))
{
//Valid date and greater than today
}
else
{
//Invalid date or less than today
}
日付を確認するのではなく、正しい形式で日付を入力するようにユーザーをバインドする必要があると思います...
この場合の最善の解決策はMaskEditExtender です