Ananda, I think you have set yourself an impossible task. For example, some countries write dates with the month first, some with the day first, and some with the year first. If a date was "01/02/03", how could you possibly work out what it means?
Secondly, why try to do this in a regex, when there are modules which can do it?
CPAN time modules
CPAN date modules