Sven Rautenberg: "# ... #is" in preg_replace

Beitrag lesen

Moin!

preg_replace("#[b](.+?)[/b]#is", "<b>\1</b>", $string);

Ich steig nicht dahinter, was das einschliessende # .. #is bedeutet ...

Anstatt der normalen Slashes / kann man auch andere Zeichen nehmen, die vorne und hinten den regulären Ausdruck begrenzen. Das empfiehlt sich vor allem dann, wenn der Slash auch im regulären Ausdruck selbst häufig benutzt wird - mit einem anderen Zeichen muß man den dann nicht escapen.

Die Modifikatoren i und s am Ende stehen für "PCRE_CASELESS" (Buchstaben werden case-insensitive gefunden) und "PCRE_DOTALL" (der Punkt steht wirklich für jedes beliebige Zeichen, auch für Zeilenumbrüche).

Siehe http://de.php.net/manual/de/reference.pcre.pattern.modifiers.php

  • Sven Rautenberg