phpbar.de logo

Mailinglisten-Archive

[php] Regul=?ISO-8859-1?B?5HJlIEF1c2Ry/A==?=cke

[php] Reguläre Ausdrücke

Peter Linzenkirchner php_(at)_phpcenter.de
Wed, 15 Aug 2001 22:28:52 +0200


Hallo, 

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";
?>

Der reguläre Ausdruck scheint zu funktionieren, allerdings die Ersetzung in
der Variablen $replace nicht. Eigentlich sollte doch \4 auf die vierte
Klammer im regulären Ausdruck verweisen - leider kommen als Ergebnis
lediglich vier sonderzeichen. Die Punkte stehen an der richtigen Stelle ...

Das Ergebnis ist hier: http://www.lisardo2.de/test-php/reg_aus1.php

Kann es sein, dass mein Provider (Strato) noch mit einer älteren PHP-Version
arbeitet? (Allerdings gehen eine ganze Reihe von PHP4-Befehlen ...)

Oder mache ich schlicht einen Fehler?

Herzlichen Dank
Peter Linzenkirchner

-- 
Peter Linzenkirchner, Lisardo Verlag & Multimedia GmbH
Herrenbachstr. 19, 86161 Augsburg
Tel: ++49-821-150565, Fax: ++49-821-150595



php::bar PHP Wiki   -   Listenarchive