您粘贴的正则表达式无法正确验证leap年,但同一篇文章中有。我修改了它采取
dd/mm/yyyy,
dd-mm-yyyy或
dd.mm.yyyy。
^(?:(?:31(/|-|.)(?:0?[13578]|1[02]))1|(?:(?:29|30)(/|-|.)(?:0?[13-9]|1[0-2])2))(?:(?:1[6-9]|[2-9]d)?d{2})$|^(?:29(/|-|.)0?23(?:(?:(?:1[6-9]|[2-9]d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:0?[1-9]|1d|2[0-8])(/|-|.)(?:(?:0?[1-9])|(?:1[0-2]))4(?:(?:1[6-9]|[2-9]d)?d{2})$我在Arun在他的答案 以及此处提供的链接中对其进行了一些测试,它似乎有效。
编辑2019年2月14日:我删除了正则表达式中的逗号,该逗号允许日期如下 29-0,-11



