phpbar.de logo

Mailinglisten-Archive

AW: [php] Gefundene Wörter fett ausgeben

AW: [php] Gefundene Wörter fett ausgeben

ANGEL Harald harald.angel at egston.com
Don Jul 21 10:04:34 CEST 2005


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