Mailinglisten-Archive |
Hi, >> ich kriege: _linkein_ http://irgendwo.com _linkaus_ >> und möchte das ersetzen mit >> <a href='http://irgendwo.com'>http://irgendwo.com</a> >> > if ereg("_linkein_(.)+_linkaus_",$string ,$regs) { > echo "<a href='$regs[1]'>$regs[1]</a>"; > } > sollte funktionieren... Nein, eigentlich nicht. Das + muss mit in die Klammer und ich wuerde preg_match benutzen (schneller). Ausserdem ist der Ausdruck greedy, will heissen, er parst so: $str = "_linkein_blablabla_linkaus_ asdasdpasd _linkein_blablabla_linkaus_"; if(ereg("_linkein_(.)+_linkaus_",$string ,$regs)) { echo "<a href='$regs[1]'>$regs[1]</a>"; } gibt die ausgabe: <a href='blablabla_linkaus_ asdasdpasd _linkein_blablabla'>blablabla_linkaus_ asdasdpasd _linkein_blablabla</a> Besser sollte es so funzen: while(preg_match("!_linkein_(.+?)_linkaus_!s",$str,$back)) { preg_replace('!_linkein_'.$back[1].'_linkaus_!','<a href="'.$back[1].'">'.$back[1]."</a>\n"); } -- mfg CK1 mailto:ckruse_(at)_freenet.de http://wwwtech.de
php::bar PHP Wiki - Listenarchive