Пару постов назад я предложил регуоярное выражение, которое будет универсальным для проверки дат. Вот оно, разбитое для удобства на строки: /(?<![0-9.])
(?P<day>
0?[1-9] | # 1-9 , 01-09
[12][0-9] | # 10-29
3[01] # 30-31
) \\.
(?(?=0?[469]|11)(?<!31\\.)|) # month of 30 day
(?(?=0?2)(?<!3[01]\\.)|) # feb not 30 31
(?(?=0?2\\.\\d\\d(?!00)(?:[02468][048]|[13579][26]))|(?<!29\\.)) # февраль високосные года и 2000 2400 2800...
(?P<month>0?[1-9]|1[12]) \\.
(?P<year>19[0-9][0-9]|20[0-9][0-9])(?!\\d)/ В принципе, так разобрать можно любую регулярку, даже написанную не тобой (эту писал не я), так что у страха глаза велики, главное - начать. Я надеюсь, что тебе этот разбор окажется полезным и ты обязательно на меня подпишешься, поставишь лайк и откомментишь!