Ähm ja, das geht sogar. Und nein, das sollte man auf keinen Fall tun.
Nunja, man kann ja einen Regulären Ausdruck für die Findung der Bestandteile verwenden und diese dann mit checkdate() prüfen.
Und nach welchem Muster soll der die Bestandteile finden? Das wird dann schon wieder kompliziert.
Ein einfacher \d{4}-\d{1,2}-\d{1,2} scheitert bereits, weil es ein Datum wie z.B. 2011-13-13 nicht gibt.