Mailinglisten-Archive |
Guten Morgen Liste!
Ich hab ein kleines Problem und komme damit einfach nicht weiter... (liegt
aber auch evtl. daran, dass ich bei den regulären Ausdrücken nicht wirklich
bewandert bin...).
Die User haben in einen Formular die Möglichkeit ein Datum einzugeben, und
können zwischen 4 Formaten wählen:
TTMMJJ, TTMMJJJJ, TT.MM.JJ, TT.MM.JJJJ
Eine Methode meiner Klasse soll den übergebenen String überprüfen und
ledeglich formatieren und falls der übergebene String keine Übereinstimmung
findet false zurückliefern.
Die Formate TT.MM.JJ sowie TTMMJJ werden richtig formatiert und von der
Methode nach dem Scheme TT.MM.JJJJ zurückgegeben.
Allerdings die Übergabe von TTMMJJJJ wird aus irgendeinem Grund so
formatiert: TTMMJJJJ.. ???
Hier meine Methode:
private function format_valuta($sZeichenkette)
{
if (eregi("^([0-9]{2}).([0-9]{2}).([0-9]{4})$",$sZeichenkette))
{
echo "<!-- zeichenkette 1 -->";
return $sZeichenkette;
} elseif (eregi("^([0-9]{2}).([0-9]{2}).([0-9]{2})$",$sZeichenkette))
{
$temp = explode(".",$sZeichenkette);
echo "<!-- zeichenkette 2 -->";
return $temp[0] . "." . $temp[1] . ".20" . $temp[2];
} elseif (eregi("^([0-9]{2})([0-9]{2})([0-9]{2})$",$sZeichenkette))
{
echo "<!-- zeichenkette 3 -->";
return $sZeichenkette[0] . $sZeichenkette[1] . "." . $sZeichenkette[2] .
$sZeichenkette[3] . ".20" . $sZeichenkette[4] . $sZeichenkette[5];
} elseif (eregi("^([0-9]{2})([0-9]{2})([0-9]{4})$",$sZeichenkette))
{
echo "<!-- zeichenkette 4 -->";
return $sZeichenkette[0] . $sZeichenkette[1] . "." . $sZeichenkette[2]
. $sZeichenkette[3] . "." . $sZeichenkette[4] . $sZeichenkette[5] .
$sZeichenkette[6] . $sZeichenkette[7];
} else {
return false;
}
}
Vielleicht kann mir hier ja jemand auf die Sprünge helfen,
danke, lg
Christian Hörmann
php::bar PHP Wiki - Listenarchive