phpbar.de logo

Mailinglisten-Archive

[php] preg_replace: <p> bzw </p> am Anfang und Ende eines Strings entfernen

[php] preg_replace: <p> bzw </p> am Anfang und Ende eines Strings entfernen

Aron Schlesinger aron at viplocations.de
Die Jun 21 14:07:20 CEST 2005


Am 21.06.2005 um 13:52 schrieb Volker Hartmann:
[...]
>
> Smarty: {$post->getText()|regex_replace:"/(^<p>) (.*) (</p>$)/":"\$2"}
> sollte eigentlich
> preg_replace( "/(^<p>) (.*) (</p>$)/", "\$2",$string);
> entsprechen.

ich habe von Smarty keine Ahnung aber bei preg_replace müsste es so  
heissen:

preg_replace( "/\<p\>(.*?)\<\/p\>/i", "\\1", $string);

Das ^ muss entweder ganz am Anfang stehen und sagt damit das der  
Ausdruck
auf den String-Anfang zutreffen muss oder es verneint etwas, dann muss
es aber mit [] umfasst werden. Das $ wiederum steht nur am ende und
sagt das der Ausdruck bis ans ende des Strings zutreffe muss.
Wenn Du den / verwendest um den Ausdruck zu umfassen, dann musst du ihn
im Ausdruck ausslashen. Das gleiche gilt für < und > da dies auch
reservierte Zeichen sind. Das i was ich gesetzt habe bewirkt das nicht
auf gross und kleinschreibung geachtet wird.

-- 
Aron Schlesinger



php::bar PHP Wiki   -   Listenarchive