我正在尝试以MM / DD / YYYY的格式实现出生日期的正则表达式。 我无法弄清楚如何强制用户输入01-12为MM,01-31为白天,以及任何四个 年份的数字。 我只是有一个MM / DD / YYYY的正则表达式,即@“^ \ d {2} / \ d {2} / \ d {4} $”。 任何建议都将不胜感激。
由于
答案 0 :(得分:3)
正则表达式非常难看,所以最好使用合法的日期解析器。
那就是说,这应该有效,并返回MM,DD和YYYY匹配组。
((?:0[1-9])|(?:1[0-2]))\/((?:0[0-9])|(?:[1-2][0-9])|(?:3[0-1]))\/(\d{4})
推荐http://www.rubular.com或类似用于测试/开发正则表达式。
答案 1 :(得分:0)
我最近在我的一个项目中使用了此正则表达式
^(0?[1-9]|1[0-2])/([0-2]?[1-9]|[1-3][01])/\d{4}$
这显然适用于dd/MM/yyyy
格式的所有日期,但是在不必要时可以不指定'0'。因此,您可以输入“ 01/01/2000”和“ 1/1/2000”。