yyyy-mm-dd日期格式的正则表达式是什么?
我想验证来自edittext的电子邮件,并检查它是否与regex匹配。
发布于 2014-02-27 15:30:03
这将与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])*
发布于 2014-02-27 15:26:13
一个简单的例子是
\d{4}-\d{2}-\d{2}
但这并不限制月份为1-12,天数为1- 31。
还有更复杂的检查,就像其他答案一样,顺便说一句,非常聪明的检查。但是,您必须检查有效的日期,因为没有检查一个月是28天、30天还是31天。
发布于 2014-02-27 16:01:48
你可以测试这个表达式:
^\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日,只验证2月29日可以有29天
匹配(检测):0001-12-31 | 9999 09 30 | 2002/03/03
https://stackoverflow.com/questions/22061723
复制相似问题