Мне потребовалось некоторое время, чтобы найти ответ на MM/DD, включая Leap Year (29 февраля).MM/DD (включая год високосного) RegEx Pattern
Итак, я решил, что задаю вопрос и отвечу на свой вопрос, чтобы посмотреть на других.
Мне потребовалось некоторое время, чтобы найти ответ на MM/DD, включая Leap Year (29 февраля).MM/DD (включая год високосного) RegEx Pattern
Итак, я решил, что задаю вопрос и отвечу на свой вопрос, чтобы посмотреть на других.
Используйте следующую
^((0?[1-9]|1[012])\/(0?[1-9]|1\d|2[0-9])|(0?[13456789]|1[012])\/(29|30)|(0?[13578]|1[02])\/31)$
Рег ех, что соответствует все действительные даты, включая високосные годы. Допустимые форматы мм/дд/гггг или мм-дд-гггг или mm.dd.yyyy формат
^(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d{2})$
Хорошее регулярное выражение, только OP хочет соответствовать MM/DD. Можно также оставить здесь ответ на историческую справку. – brandonscript
@Amarnath: ваш второй образец соответствия «01/00/2014» –
@CasimiretHippolyte удалили его пока. –
@CasimiretHippolyte Это работает для меня. Можете ли вы привести пример, который терпит неудачу? – stark
Действительно, он работает хорошо. –
Поскольку вы являетесь аскером, ваша работа - проверить его, как принято. –