日付形式yyyy-mm-ddの正規表現は何ですか?
Edittextからの電子メールを検証し、正規表現と一致するかどうかを確認します。
これは、yyyy-mm-dd
とyyyy-m-d
にも一致します。
^\d{4}\-(0?[1-9]|1[012])\-(0?[1-9]|[12][0-9]|3[01])$
yyyy-mm-dd
に完全に一致するものを探している場合は、これを試してください
^\d{4}\-(0[1-9]|1[012])\-(0[1-9]|[12][0-9]|3[01])$
または、The date is 2017-11-30
のような文字列内で日付を見つける必要がある場合は、これを使用します
\d{4}\-(0?[1-9]|1[012])\-(0?[1-9]|[12][0-9]|3[01])*
簡単なものは
\d{4}-\d{2}-\d{2}
ただし、これは月を1〜12、日を1〜31に制限しません。
かなり賢い方法で、他の答えのようなより複雑なチェックがあります。それにもかかわらず、有効な日付を確認する必要があります。これは、月に28日、30日、または31日があるかどうかの確認がないためです。
この正規表現を使用して、yyyy-MM-dd形式を取得できます:((?:19 | 20)\ d\d) ?[1-9] | 1 [012])-([12] [0 -9] | 3 [01] | 0?[1-9])
日付検証の例を見つけることができます:---(正規表現で日付を検証する方法
この式をテストできます:
^\d{4}[\-\/\s]?((((0[13578])|(1[02]))[\-\/\s]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[\-\/\s]?(([0-2][0-9])|(30)))|(02[\-\/\s]?[0-2][0-9]))$
説明:
yyyy-mm-dd、yyyy mm dd、またはyyyy/mm/ddの日付を検証します
日がその月の有効な範囲内にあることを確認します-うるう年の2月29日は検証しません。
一致(テスト済み):0001-12-31 | 9999 09 30 | 2002/03/03