regulärer Ausdruck: Muster oder komplett leer
Snucky
- php
Hi!
Ich möchte eine Benutzereingabe prüfen (ein mysql-konformes Datum YYYY-MM-DD
^(\d{4})\-(\d{2})\-(\d{2})$
erledigt das hervorragend.
-------------------------
Für einen weiteren Zweck wollte ich nun die Option in den Ausdruck miteinbinden, dass der String auch komplett LEER sein darf.
define ("REG_EXP", "/expression/");
$string = "2008-05-05";
$empty_string = "";
$dismatch = "blabla";
var_dump(preg_match(REG_EXP, $string)); // soll TRUE zurückgeben
var_dump(preg_match(REG_EXP, $empty_string)); // soll TRUE zurückgeben
var_dump(preg_match(REG_EXP, $dismatch)); // soll TRUE zurückgeben
Für Vorschläge wäre ich sehr dankbar
Entschuldigt! Der dritte Aufruf von preg_match soll natürlich FALSE zurücliefern!!!
Hallo Snucky,
Ich möchte eine Benutzereingabe prüfen (ein mysql-konformes Datum YYYY-MM-DD
^(\d{4})\-(\d{2})\-(\d{2})$
erledigt das hervorragend.
Echt? 9999-99-99
Ansonsten: ^((\d{4})-(\d{2})-(\d{2}))?$
Gruß Uwe
Naja, FAST hervorragend :-)
DANKE ! für das freundliche Aushelfen!
Verwende jetzt diesen Ausdruck
^((19|20|21)\d\d-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01]))?$
Schon ziemlich lang!