# 6.2.4 Suchen und Ersetzen

Bislang konnten wir mit preg_replace() nur festgelegte Ersetzungen vornehmen. Interessant wird es nun, da `preg_replace($suchmuster, $ersetzen, $text)` auch die zuvor gefundenen Textstücke verwenden kann.

Beispiel Datumsformat konvertieren

Konvertieren des ISO Datum-Formats yyyy-mm-dd in ein deutsches Datumsformat dd.mm.yyyy.
Text: `2011-05-31`
Suchmuster: `/(\d{4})-(\d{2})-(\d{2})/`
Ersetzen: `$3.$2.$1`
Ergebnis: `31.05.2011`
Jedes Teilergebnis einer runden Klammer (z.B. `(\d{4})`) wird automatisch in eine Reguläre-Ausdruck-Variable geschrieben. Die erste öffnende Klammer in `$1`, die zweite öffnende Klammer in `$2`, usw.

Hier das Beispiel als komplettes PHP-Miniprogramm:

    1
    2
    3
    4
    5
    6
    7
    <?php
    $date = '2011-05-31';
    $such = '/(\d{4})-(\d{2})-(\d{2})/';
    $ersetz = '$3.$2.$1';
    $datum = preg_replace($such, $ersetz, $date);
    print $datum;
    ?>