Mailinglisten-Archive |
>Ich bin ein ziemlicher Neuling in Sachen PHP und im Moment leider in = einer >Sackgasse. Ich möchte mit Hilfe von regulären Ausdrücken in einem = String >alle URLs finden und in HTML-Links umwandeln. Als Vorübung habe ich >versucht, ein englisches Datum in ein deutsches umzuwandeln: > >Also 1999-05-26 in 26.5.1999 > >Dazu habe ich folgenden Code verwendet: > ><?php > >$pattern="/(19|20)(\d{2})-(\d{1,2})-(\d{1,2})/"; >$replace="\4.\3.\1\2"; >$text="1999-05-26"; >$result=preg_replace($pattern, $replace, $text); > >echo "$result"; >?> > Peter, das Problem ist, daß in $replace="\4.\3.\1\2"; über den \<nr> bereits Sonderzeichen eingesetzt werden. Schreib' $replace='\4.\3.\1\2'; dann läßt php das bleiben (mit der Ersetzung). Das ist aus Performanzgründen ohnehin sinnvoll, wenn Du in einem string weder \-Kombination noch Variablennamen hast - "-eingeschlossene strings werden von php extra geparsed ... --- Thomas Beckmann, Kiel, Germany beckmann_(at)_gis.de
php::bar PHP Wiki - Listenarchive