Следующее регулярное выражение соответствует вашей дате и другим подобным.
([1-9][\d]{3})[- \/.]([0-1][\d])[- \/.]([0-3][\d])
Пояснение
Первая группа ([1-9][\d]{3})
- это год и допускает диапазон от 1000 до 9999
Вторая группа ([0-1][\d])
является месяцем и допускает диапазон от 00 до 19 (очевидно, он не будет ловить плохие месяцы)
Третья группа ([0-3][\d])
- это день и допускается диапазонОт 00 до 39 (опять же, плохие дни не уловятся)
Если у вас есть эти части, вы можете выполнить явную проверку с использованием более подходящих инструментов, чем регулярное выражение, или просто использовать DateTime
начните с объекта и не изобретайте велосипед.