comment faire une orthographe approchée ? [trouvé] - PHP - Programmation
Marsh Posté le 17-08-2004 à 11:29:38
la fonction soundex() existe aussi en PHP. il y a aussi d'autres fonctions permettan de comparer en pourcentage le rapprochement de deux mots ... put1 le PHP c'est génial
Marsh Posté le 17-08-2004 à 15:18:43
A noter cette fonction qui est plus précise, car elle prend en compte la prononciation française :
Code :
|
Marsh Posté le 17-08-2004 à 20:15:44
Et moi qui croyait avoir affaire à des "fonctions magiques" (limites mystiques) dans leurs fonctionnements, je me rend compte que c'est juste la voyelle qui fait le son...
Marsh Posté le 17-08-2004 à 20:38:18
Attention, la fonction que j'ai posté plus haut semble ne pas fonctionner ...
Marsh Posté le 17-08-2004 à 20:50:06
Perso je trouve tes ereg bizarement foutu et ça m'étonnerait que ça marche, mais n'ayant jamais essayé cette méthode...
Chez moi :
$chaine = ereg_replace('a|e|i|o|u|y|h|w', '', $chaine); |
et idem pour les consonnes...
edit: et sans avoir du tout essayé
Marsh Posté le 17-08-2004 à 21:38:35
nan c pas une regexp !! c'est strtr() qui remplace 1 par 1 le contenu des chaines de caractère
Marsh Posté le 17-08-2004 à 21:50:49
Dsl c'est ta phrase qui était mal formulé
Ça donne quoi ta fonction? Ça marche ou pas?
edit: Formulation (forcément si moi aussi je m'y mets )
Marsh Posté le 17-08-2004 à 22:04:25
Master P a écrit : Et moi qui croyait avoir affaire à des "fonctions magiques" (limites mystiques) dans leurs fonctionnements, je me rend compte que c'est juste la voyelle qui fait le son... |
en l'occurence c'est la consonne dans soundex
Marsh Posté le 17-08-2004 à 22:05:20
Master P a écrit : Dsl c'est ta phrase qui était mal formulé |
c pas la mienne (piquée sur nexen lol) et elle donne pratiquement tjs le même résultat donc bof.
il doit y avoir une petite subtilité à modifier pour obtenir un résultat pertinent
Marsh Posté le 17-08-2004 à 22:12:37
Le seul truc qui me gêne, c'est le fait de tronquer le mot après les 4 premières lettres :
1/ On aurait dû faire ça dès le débuts, ça aurait éviter des calculs inutiles
2/ C'est pas forcément plus pertinent.
Marsh Posté le 17-08-2004 à 22:20:40
Ben c l'algo qui veut ça
http://www.chez.com/algor/soundex/soundex.htm
edit : je repete que c pas moins qui l'ai pondu le truc lol
Marsh Posté le 17-08-2004 à 22:25:00
Lex a écrit : Ben c l'algo qui veut ça |
Je sais j'ai compris
Mais ton lien en dis pas plus sur le "pourquoi" du troncage
Marsh Posté le 17-08-2004 à 22:53:18
Master P a écrit : Je sais j'ai compris |
je suis d'accord avec toi que c assez débile ...
Marsh Posté le 17-08-2004 à 09:58:31
Comment font les moteurs de recherches (ou les pages jaunes par exemple) pour proposer des mots clés approchés de ceux que l'on propose ? Quel type d'indexation utilisent-ils ?
Par exemple : sur les pages jaunes je demande "mortin" à paris et comme il n'existe pas de "mortin" il me sort les "martin".
merci de votre aide
edit : solution SELECT soundex('mortin'); dans mysql
Message édité par Lex le 17-08-2004 à 10:05:40