日付(DD/MM/YYYY)をチェックする正規表現をC# に書き込もうとしています。正規表現誕生日の日付時刻
日付(01/01/01)または(12/12/9999)も問題ありません。 日時は01-12の間でなければなりません。 月の時刻は01-12でなければなりません。 年の時刻は0000-9999 でなければなりません。その間は「/」でなければなりません。
日付(DD/MM/YYYY)をチェックする正規表現をC# に書き込もうとしています。正規表現誕生日の日付時刻
日付(01/01/01)または(12/12/9999)も問題ありません。 日時は01-12の間でなければなりません。 月の時刻は01-12でなければなりません。 年の時刻は0000-9999 でなければなりません。その間は「/」でなければなりません。
^([012]\d|30|31)/(0\d|10|11|12)/\d{4}$
それを行う必要があります!
代わりにDateTime.TryParse
を使用することをおすすめできますか?ユーザーの所在地によっては、日付形式が異なる必要があります(dd/mm vs mm/dd)。正規表現は、作業を行うための既存のコードをテストしたときには堅実ではありません。
私はありません日付
をチェックしますC#で正規表現を記述しようとしています、あなたは、日付を確認するために、正規表現を記述する必要はありません。それは過労だろう。 DateTime.TryParseExactメソッドを使用できます。
DateTime date;
string someDateToCheck = "12/12/9999";
if (DateTime.TryParseExact(someDateToCheck, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out date))
{
// the date was successfully parsed. You can use the date instance here
}
オーバーキルまたはパワーダウン(うるう日)? –
あなたのRegExは '29/02/2012'にどのように反応しますか? 'DateTime.TrParse()'を使用するだけです –
あなたの希望する答えは、Google検索の最初のページにあります。 http://regexlib.com/DisplayPatterns.aspx?cattabindex=4&categoryId=5 – David
RegExを使用しないでください。組み込みパーサーを使用します。 – mydogisbox