1 [0-2] | 0? [1-9]) [-. /] (0? [1-9] | [12] [0-9] | 3 [01]) [-. /] (/ D / d / d / d)
$ 1 matches 10, 11, 12, 01, 02, 03, 04, 05, 06, 07, 08, 09 is also matching the month
$ 2 matches 01,02 ... 09, 10, 11 .... 29, 30, 31 is also the date of matching
$ 3 Match 0000,000 ,0001 .... 9999 is also a match year
Plus the middle character set
The following will match
10/10/1999
10-10-1999
10.10.1999