首页 > 解决方案 > 有人可以为我提供一个匹配 1986-04-02 或 XXXX-XX-XX 的 DOB 正则表达式吗

问题描述

我想接受的 DOB 是:

XXXX-04-26(1976-04-26)
1976-XX-26(1976-04-26)
1976-04-XX(1976-04-26)

我不是正则表达式专家。目前,我有

[RegularExpression("^(((\\d{4}-((0[13578]-|1[02]-)(0[1-9]|[12]\\d|3[01])|(0[13456789]-|1[012]-)(0[1-9]|[12]\\d|30)|02-(0[1-9]|1\\d|2[0-8])))|((([02468][048]|[13579][26])00|\\d{2}([13579][26]|0[48]|[2468][048])))-02-29)){0,10}$", ErrorMessage = "next_court_date is invalid and date format should be 'YYYY-MM-DD'")]

它与日期表达式匹配,但我需要将第二个表达式添加到它作为替代。谢谢!

标签: regex

解决方案


(XXXX|[1-2]\d{3})-(XX|(0[1-9])|1(1|2))-(XX|([0-2]\d)|30|31)$

这是regex101中的演示


推荐阅读