burghi'sphp-dummies.de
PHP für Einsteiger und Fortgeschrittenere - an laufenden Scripten erklärt
18.12.2017, 07:54 Uhr - Impressum

Tutorials - RegExpressions - Ersetzen - preg_replace

Tutorials - RegExpressions
Ersetzen: preg_replace
Zum Ersetzen von regulären Ausdrücken gibts die Funktion "preg_replace()"

Hier mal im Einsatz, aus $Text soll das Wort "Käfer" immer fett werden:Hm. Das schaut aber eigentlich genauso aus wie der normale "str_replace()"-Befehl.
Klar, es war ja auch noch kein Regulärer Ausdruck.
Den müsst man sich jetzt erst noch überlegen.

Uuund zwar sollen jetzt alle Wörter, die "Käfer" enthalten, komplett fett sein.
Also "Maikäfer" statt nur "Maikäfer"

also würd ich mal sagen der Reguläre Ausdruck könnte folgendermaßen aussehen:
-- So viele Buchstaben (auch Zahlen) wie es beliebt, auch kein (für den Fall, dass "käfer" am Anfang des wortes steht)
-- \w*
-- Dann sollte das Wort "käfer" kommen
-- \w*käfer
-- und dann nochmal das selbe wie vorne
-- \w*käfer\w*

in preg_replace schaut es dann so aus:
<?php

?>
Da sind noch Fragezeichen. Weil durch was ersetzen wir jetzt ?
Durch "<b>irgendwas</b>", soviel ist klar...
Ich sags jetzt einfach mal: durch \\0.
Mehr dazu gleich :-)Warum "\\0"?
Ganz einfach. Alles, was preg_replace findet, speichert er in \\0.

Mit runden Klammern kann man noch mehr einzelne Teilausdrücke definieren.
So wäre z.B. bei '(\w*)(käfer)(\w*)' das erste \w* in \\1 gespeichert, "käfer" in \\2, das 2. "\w*" in \\3.

Damit ließe sich dann z.B. folgendes machen:
© 2004-2005 - Impressum