Mailinglisten-Archive |
Hi, KM> Nabend Christian, Nabend? ts, geh mal schlafen, es ist hellichter Tag, ich hab mir sagen lassen, das draussen die sonne scheint *g* KM> hehe, jau leider.. schefschen is am stunk machen, KM> weil projekt noch nicht abgeschlossen ist ;-) Naja, um 20:xx ist bei mir spaetestens schicht, das bringt eh nix mehr, wenn man ein paar stunden gepennt hat, gehts schneller. KM> vielen dank ! KM> könntest du mir sagen wo ich ein preg-docu finde ? php.net/preg_replace die perldoc ist bei jeder perldistribution dabei, gib einfach in nem dosprompt perldoc -q greedy ein. KM> könntest du das bitte näher erklären !? Klar: Angenommen du hast einen String $txt = "<small>Kleiner</small> <i>Text</i> <u>zum</u> <big>erlaeutern</big> von <b>greedy</b>"; und du moechtest alle html-tags ersetzen durch <b>. In dem Fall ist str_replace nicht maechtig genug, da muss preg_replace herhalten ;) Ein erster Ansatz waere folgendes: $txt = preg_replace("/<[^\/]*>(.*)<\/.*>/","<b>\\1</b>",$txt); du wuerdest jetzt feststellen, dass der Ausdruck totalen Schwachsinn mit deinem String anstellt: der Ausdruck ist greedy. Er geht nicht bis zur ersten spitzen Klammer, sondern immer bis zur letzten. Das nennt man "greedy" und wird verursacht durch den *-Quantifier, bzw. auch durch den +. Verhindert wird das einfach durch ein ? hinter dem Quantifier. So, ich muss los, -- mfg, Christian mailto:CK1_(at)_wwwtech.de http://wwwtech.de
php::bar PHP Wiki - Listenarchive