~^\d{2}[/.-]\d{2}[/.-]\d{4}$~
könnte also funktionieren. Ich habe jetzt die Sinnhaftigkeit der Expression nicht betrachtet, sondern nur die Formalien.
Jawohl. Diese tun es.
Ich meine nicht - Zawinski grüßt mal wieder: du willst vermutlich prüfen, ob der Feldwert ein Datum darstellt.
99.10.2000 rutscht da locker durch aber auch 12.03-2011 oder 12-03.2011.
Der 1.1.2011 hingegen wäre ein Fehler.
strptime() und checkdate() sind da wesentlich schlauer.