This will look for most valid date values in the format mm/dd/yyyy for 2000-2009.
POSIX Search for:
^.*([1-9]|1[012])/([012]?[1-9]|[123]0|31)/(200[0-9]).*$
Non-POSIX Search for:
^.*\([1-9]\|1[012]\)/\([012]?[1-9]\|[123]0\|31\)/\(200[0-9]\).*$
Replace with:
\1/\2/\3
Explanation of Non-POSIX Search Regex:
^..........................................From beginning of the line
.*.........................................Any group of characters
\(...........................................Beginning of tagged expression 1
[1-9]\|1[012]..........................Numbers 1-12 (1-9, or 10,11,12)
\)...........................................End of tagged expression 1
/.........................................../ (Date separator)
\(...........................................Beginning of tagged expression 2
[012]?[1-9]\|[123]0\|31........Numbers 1-31 (1-9,11-19,21-29, or 10,20,30, or 31)
\)...........................................End of tagged expression 2
/.........................................../ (Date separator)
\(...........................................Beginning of tagged expression 3
200[0-9]................................2000-2009
\)...........................................End of tagged expression 3
.*..........................................Any group of characters
$............................................End of the line
Explanation of POSIX Search Regex:
^..........................................From beginning of the line
.*.........................................Any group of characters
(...........................................Beginning of tagged expression 1
[1-9]|1[012]..........................Numbers 1-12 (1-9, or 10,11,12)
)...........................................End of tagged expression 1
/.........................................../ (Date separator)
(...........................................Beginning of tagged expression 2
[012]?[1-9]|[123]0|31........Numbers 1-31 (1-9,11-19,21-29, or 10,20,30, or 31)
)...........................................End of tagged expression 2
/.........................................../ (Date separator)
(...........................................Beginning of tagged expression 3
200[0-9]................................2000-2009
)...........................................End of tagged expression 3
.*..........................................Any group of characters
$............................................End of the line
Explanation of Replace Regex:
\1...............Tagged expression 1
/................./ (Date separator)
\2...............Tagged expression 2
/................./ (Date separator)
\3...............Tagged expression 3
NOTES:
1. Per your sample, it does not handle months/days padded with leading 0 like 02/07/2006.
2. It does not skip dates like 4/31 which only has 30 days.
3. This assumes no other field will have data in the format of mm/dd/yyyy, and will ignore any other formats for time.
4. If doing cut and paste from this forum, be sure to delete trailing spaces at end of lines.