Я предполагаю, что следующая логика похожа на другие языки - синтаксический анализ вернет год, который соответствует диапазону 100 с сегодняшнего дня. Следовательно, если вы выполните синтаксический анализ 15.01.01, вы получите 01.01.2015, но при разборе 30.01.01 вы получите 1930.01.01.
Однако вы знаете, что последние две цифры года будут совпадать, так что вы можете просто исправить столетие вручную. В псевдокоде
fixed_year = 2000 + year % 100;
В вашем случае я использую 21-й век (2000) и добавляю остаток от деления на 100 от года, который я получил после разбора после. Так что это значит, что оно отрезает столетие и заменяет его 21-м столетием.