Rom*_*era 32 java regex validation android date
什么是日期格式yyyy-mm-dd的正则表达式?
我想验证来自edittext的电子邮件,并检查它是否与正则表达式匹配.
Vin*_*nod 82
这将匹配yyyy-mm-dd
并且还yyyy-m-d
:
^\d{4}\-(0?[1-9]|1[012])\-(0?[1-9]|[12][0-9]|3[01])$
Run Code Online (Sandbox Code Playgroud)
如果您正在寻找完全匹配,yyyy-mm-dd
那么试试这个
^\d{4}\-(0[1-9]|1[012])\-(0[1-9]|[12][0-9]|3[01])$
Run Code Online (Sandbox Code Playgroud)
如果你需要在字符串中找到一个日期,请使用这个 The date is 2017-11-30
\d{4}\-(0?[1-9]|1[012])\-(0?[1-9]|[12][0-9]|3[01])*
Run Code Online (Sandbox Code Playgroud)
https://regex101.com/r/acvpss/1
wum*_*mpz 20
一个简单的就是
\d{4}-\d{2}-\d{2}
Run Code Online (Sandbox Code Playgroud)
但这不会将月份限制为1-12,将日期限制为1至31.
在其他答案中有更复杂的检查,顺便说一下非常聪明的检查.然而,您必须检查有效日期,因为没有检查是否有一个月有28天,30天或31天.
你可以测试这个表达式:
^\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]))$
Run Code Online (Sandbox Code Playgroud)
说明:
验证 yyyy-mm-dd、yyyy mm dd 或 yyyy/mm/dd 日期
确保日期在该月的有效范围内 - 在闰年不验证 2 月 29 日,仅验证 2 月可以有 29 天
匹配(已测试):0001-12-31 | 9999 09 30 | 2002/03/03
您可以使用此正则表达式获取yyyy-MM-dd格式:
((?:19|20)\\d\\d)-(0?[1-9]|1[012])-([12][0-9]|3[01]|0?[1-9])
Run Code Online (Sandbox Code Playgroud)
您可以找到日期验证的示例:如何使用正则表达式验证日期。