[PHP] algo type SOUNDEX

WRInaute discret
Bonjour à tous,

Utilisez-vous, à travers vos sites, un algo de type SOUNDEX spécifique pour la langue française ?
Il y en a quelques un sur la toile mais difficile de faire son choix sans passer quelques heures sur chaque pour les tester ?

Merci de partager votre expérience.
 
WRInaute passionné
Personnellement je ne connais pas SOUNDEX, mais je me sers de mes logs de recherche pour créer un dico "français" pour pspell :
Code:
function didumean($query) {
	//$pspell_config = pspell_new('fr', '', '', '',(PSPELL_FAST|PSPELL_RUN_TOGETHER));
	$pspell_config = pspell_config_create('fr', '', ''.SITENAME.'', 'cp1252');
	pspell_config_mode($pspell_config, PSPELL_FAST);
	pspell_config_personal($pspell_config, SITEDIR . '/includes/didumean.pws');
	$pspell_link = pspell_new_config($pspell_config);
	$words = preg_split ('/\s+/', $query);
	$ii = count($words);
	$spellchecked = '';
		for($i=0; $i<$ii; $i++){
			if (pspell_check($pspell_link, $words[$i])){
				$spellchecked .= $words[$i] . ' ';
			} else{
				$erroneous = TRUE;
				$suggestions = pspell_suggest($pspell_link, $words[$i]);
				if ($suggestions) 
					$spellchecked .= $suggestions['0'] . ' ';
			}
		}
	if(isset($erroneous)){
		return ucwords($spellchecked);
	} else{
		return false;
	}
}

J'ignore si jamais ça t'aidera car ce n'est pas trop ce que tu demandes, mais bon.
 
WRInaute discret
Je n'ai jamais utilisé pspell ... "Que faites vous"/"Comment exploitez vous" votre dictionnaire pspell ?

Merci
 
WRInaute impliqué
j'ai utilisé pour un site de généalogie pour un ami ( http://www.eclatdebois.org - faites pas gaffe au design, on fait selon les gouts du proprio) pas mal mais a adapter en faisant des recherches a plusieurs etages, et en triant les resultats avec un levenstein.
 
WRInaute passionné
Pour pspell, je logue toutes les requêtes "recherche" que j'ai, je récupère celles que j'ai eu plus de 5 fois et je les mets dans un fichier "txt" basique, ensuite je compile en format "dico" à l'aide de pspell_create.

Bon, par contre je ne l'utilise plus maintenant, mais la création du dico est très simple dès que tu as une liste à mettre dedans.
Tu peux par exemple découper tous tes billets (si c'est toi qui les écrit je pense qu'il y a peu de fautes d'orthographe) en mettant chaque mot dans une base de données après tu comptes et au final tu sors un dico avec les mots de plus de 4/5 caractères.

Désolé pour ces infos à l'arrache, je sais qu'à chaque fois que je veux mettre ce moteur en place, il me faut une bonne heure pour me rappeler comment créer le dico.
 
Discussions similaires
Haut