Mailinglisten-Archive |
Hallo Tim! Tim Hildebrandt wrote: > Ein preg_replace() mit der Option "case insensitiv" erzeugt aber das > Problem, dass wenn z.B. nach "teller" gesucht wurde, dann überall in den > Suchergebnissen auch "<b>teller</b>" ausgetauscht wird. Allerdings > werden dann die falsch geschriebenen Stichworte aus der Suche > übernommen, statt - korrekterweise - "<b>Teller</b>" auszutauschen. Gibt > es eine Möglichkeit, das gleich sofort korrekt austauschen zu lassen > oder muss ich in jeder einzelnen Ergebniszeile mittels regulärem > Ausdruck erst alle Wörter case insensitiv ermitteln lassen und das Array > dann per foreach-Schleife tauschen? Du verwendest das gesuchte Wort dann auch als Ersetzung, oder? Versuchs mal so: $keyword = 'teller'; $text = preg_replace('/('.$keyword.')/is', '<b>\1</b>', $text); echo $text; \1 ist die back reference auf das gefundene Wort und ersetzt somit dieses wie vorgefunden. Gruß Alex
php::bar PHP Wiki - Listenarchive