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