Pagina 1 van 1

Aanpassing om tabel zoekfunctie iets te beperken

Geplaatst: 17 feb 2005, 22:59
door Lontronics
Binnen phpBB worden woorden <3 karakters en >20 karakters uitgefilterd en dus niet opgeslagen t.b.v. de zoekfunctie.

Vlgs mij gebeurt dit in /includes/functions_search.php:

Code: Selecteer alles

	if ( $mode == 'post' )
	{
		$entry = str_replace('*', ' ', $entry);

		// 'words' that consist of <3 or >20 characters are removed.
		$entry = preg_replace('/[ ]([\S]{1,2}|[\S]{21,})[ ]/',' ', $entry);
	}
Mijn vraag is de volgende:
Stel dat ik een minimum aantal karakters van 5 zou willen gaan hanteren, hoe pas ik dit dan aan?
Wordt de {1,2} dan {1,2,3,4} of moet ik dit op een andere manier aanpassen?
Heeft er iemand enig idee wat de besparing in db-ruimte is met deze aanpassing?

Groeten,
Jan

Geplaatst: 18 feb 2005, 08:52
door Paul
Volgens mij wordt het {1,2,3,4} :)

Geplaatst: 18 feb 2005, 11:32
door Merlin Sythove
Check de documentatie van preg_replace maar volgens mij is het
{minimum, maximum} voor het herhalen van karakters.

Geplaatst: 18 feb 2005, 12:56
door Lontronics
Ik denk dat je gelijk hebt: http://php.planetmirror.com/manual/nl/f ... eplace.php

Groeten,
Jan

Geplaatst: 18 feb 2005, 14:04
door Lontronics

Code: Selecteer alles

if ( $mode == 'post' )
   {
      $entry = str_replace('*', ' ', $entry);

      // 'words' that consist of <5 or >20 characters are removed.
      $entry = preg_replace('/[ ]([\S]{1,4}|[\S]{21,})[ ]/',' ', $entry);
   } 
Dit is het geworden en het werkt. Nieuwe post met abc als inhoud, vervolgens zoeken op abc >> niet gevonden.

Thx ;)

Jan.