You can use a pipe (\|) to combine regular expressions, so as long as you can write a regex for each of these, you can paste them all together, e.g. this ought to match the first two dates: "\([12][0-9][0-9][0-9]-[1-9]-[1-9]\|[12][0-9][0-9][0-9]-[0-9]-0[1-9]\)" (You haven't clearly specified the formats, so this probably needs to be generalized for your actual problem.)
However, you've got some bigger questions you might need to consider.
What exactly does 10-11-2010 mean? Is that October 11, or November 10?
Are you assuming only valid dates? What are you going to do about 2010-1-32? What about 2010-2-29?