Mailinglisten-Archive |
Hi Thomas, Am Donnerstag, 21. Juli 2005 09:23 schrieb thomas.hausheer at bluewin.ch: > Hallo > > bin am Tutorial suchen nach einer einfachen Methode mit der ich nach > einer MySQL Suche die gesuchten Wörter im gefundenen Text anders > darstellen kann (zB. Fett). > Hat mit jemand einen heissen Tipp? Bin grad dabei etwas ähnliches zu machen... Den Schnipsel hab ich im Web gefunden: $suchwort = "suchwort"; $post = "Dein Text do das suchwort oder die suchworte vorkommen steht hier"; $keywords = str_replace( "+", " ", $suchwort ); if ( preg_match("/,(and|or),/i", $keywords) ) { while ( preg_match("/,(and|or),/i", $keywords, $match) ) { $word_array = explode( ",".$match[1].",", $keywords ); if (is_array($word_array)) { foreach ($word_array as $keywords) { echo $keywords."<br>"; $post = preg_replace( "/(^|\s)($keywords)(\s|$)/i", "\\1<span class='highlight'>\\2</span>\\3", $post ); } } } } else { $post = preg_replace( "/(^|\s)($keywords)(\s|$)/i", "\\1<span class='highlight'>\\2</span>\\3", $post ); } echo "<br>".$post; Nur funktioniert der Code mit mehreren Wörtern nicht so wie ich mir das vorstelle. Ich muß aber auch ehrlich zugeben dass ich den RegExp nicht ganz verstehe: "/,(and|or),/i" Aber vielleicht hilfts dir ja! Lg Harald
php::bar PHP Wiki - Listenarchive