phpbar.de logo

Mailinglisten-Archive

[php] Regular Expression zum Stopwoerter filtern

[php] Regular Expression zum Stopwoerter filtern

Ralf Eggert php_(at)_phpcenter.de
Sun, 16 Dec 2001 00:51:49 +0100


Hi,

auch auf die Gefahr hin, hier zum Alleinunterhalter zu mutieren... ;-)

>>>foreach($stopwords as $tmp) $stop[] = "|$tmp|";
>>>
>>>$nonstop = preg_replace($stop,'',$text);

Also der Ansatz funktioniert zwar, ist aber ungefaehr 30 mal so langsam
wie mein fehlerhafter Ansatz. Das liegt wohl daran, dass preg_replace
zwar nur einmal aufgerufen wird, es aber dennoch so viele Durchlaeufe
macht, wie Elemente im Array $stop enthalten sind.

Hier nochmal mein Ansatz, wobei in $stopwords ein Array mit den
Stopwoertern und in $text der Text enthalten sind. 

>  $search[] = "= " . implode(" | ", $stopwords) . " =i";
>  $search[] = "= +=";
>  
>  $replace[] = " ";
>  $replace[] = " ";
>  
>  $text = trim(preg_replace($search, $replace, $text));

Bin weiterhin fuer alle Tipps dankbar.

Gute Nacht,

        Ralf

-- 
_____________________________________________
  In-Greece.de - die Griechenlandcommunity
____ http://www.in-greece.de/xmas.php3 ______


php::bar PHP Wiki   -   Listenarchive