|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2005 Messages : 130 ![]() |
Bonjour tout le monde,
je voulais vous poser une question... j'espère bien avoir une réponse favorable bon voila, j'ai besoin de savoir s'il y a un algorithme en php pour faire une recherche comme google... je tape par exemple "algoirthme" et je dois recevoir une recherche pour "algorithme"... je vous remercie d'avance |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Tiger Scott Développeur Web Inscription : juin 2006 Messages : 1 251 ![]() |
j'ai pas tout compris a ta demande....
tu veux faire une recherche sur des fichiers, des pages internet ou intranet ? si c'est pour faire comme google sur le net je sais pas comment faire.. si c'est en intranet tu peux toujours essayer de récupérer les metadonnées des fichiers contenus sur ton site comme ca tu pourras lancer une recherche sur tous tes fichiers. (sinon une recherche avec mysql ^^). je sais pas si je t'ai aidé... |
|
|
00
|
|
|
#3 |
|
Membre habitué
![]() Inscription : novembre 2006 Messages : 126 ![]() |
Bon sinon moi j'ai compris
Je pense qu'il faut que tu utilises une sorte de dictionnaire. Quand le mot est entré, tu vérifies son existance dans ce dictionnaire et si non, tu inverses les lettres du mot (ou un autre truc) et tu revérifies l'existence du mot. Ou une autre méthode est si le mot n'existe pas, tu lances une requete "LIKE" et tu essaies de trouver le morceau le plus long du mot entré reconnu dans ta base et tu retournes le mot correspondant de ta base |
|
|
00
|
|
|
#4 | |
|
Membre Expert
![]() ![]() Tiger Scott Développeur Web Inscription : juin 2006 Messages : 1 251 ![]() |
Citation:
et comme j'ai pas tout saisis, je voulais pas trop m'avancer :p |
|
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2005 Messages : 130 ![]() |
Merci beacoup pour vos réponses, pour mieu m'expliquer, la recherche va se faire avec la base de données, galak63 a compris un peu ce que je veux faire... c'est ca, donc je dois utiliser un dictionnaire...
est ce que vous avez une idée s'il y a un algorithme prêt ou dois-je creer le dictionnaire moi même pour le like, je l'utilise déjas, mais je veux aussi que si une personne se trompe, un resultat s'affiche quand meme... je vous remercie.. |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() ![]() Tiger Scott Développeur Web Inscription : juin 2006 Messages : 1 251 ![]() |
ok j'ai (enfin) compris...
je vote aussi pour le dico |
|
|
00
|
|
|
#7 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2005 Messages : 130 ![]() |
je vais proposer une idée et j'espere bien que vous allez voter si c'est correcte ou non :d
voila, je compte importer tous les mots existants dans la base de données et creer un algorithme qui donne toutels les combinaisons possibles des mots et les enregistrer dans la bdd par exemple: "trois"=>toris, rtios... merci de laisser vos commentaires et si quelqu'un a une autre suggestion, je suis prenante biensur!!! merci encore |
|
|
00
|
|
|
#8 |
|
Membre chevronné
![]() Analyste - Programmeur Inscription : mai 2006 Messages : 712 ![]() |
Il faut que le code connaissent les mots pour si il y'a une erreur effectuer une modification.
L'utilisation d'un dictionnaire parait inevitable. |
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() ![]() Tiger Scott Développeur Web Inscription : juin 2006 Messages : 1 251 ![]() |
ton alog pour trouver toutes les combinaisons pourrait marcher...
mais... 1° je te racontes pas le nombre de mots qu'il va te trouver... 2° rien que pour "trois" tu as : trois, trosi, trsoi, tsroi, stroi, triso, toris, otris, toisr, toirs, rtois, roist, roits, rotis, rtois (je suis sur j'en ai oublié).... => imagine donc, t'as des mots de plus de 5 lettres... c'est ingérable...ou si.. mais t'as le temps d'aller faire tes courses la place que ca va te bouffer... donc, perso je te dirais de trouver une autre soluce... |
|
|
00
|
|
|
#10 |
|
Membre chevronné
![]() Analyste - Programmeur Inscription : mai 2006 Messages : 712 ![]() |
Il y'a 2^n possibilité sachant que n est le nombre de lettre
|
|
|
00
|
|
|
#11 |
|
Membre chevronné
![]() Inscription : janvier 2006 Messages : 918 ![]() |
Pourquoi ne pas faire un tour du côté de la fonction soundex ?
http://fr3.php.net/soundex Voir aussi http://fr3.php.net/manual/fr/function.similar-text.php et http://fr3.php.net/manual/fr/function.levenshtein.php |
|
|
00
|
|
|
#12 |
![]() ![]() Xavier PhilippeauArchitecte système Inscription : décembre 2006 Messages : 9 424 ![]() |
Il y a plusieurs moyens pour résoudre ton probleme: Hashage commutatif, Heuristique de consonance , distance de Hamming, ...
Il faudrait que tu postes ton probleme dans le forum Algorithmie...
__________________
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple. |
|
00
|
|
|
#13 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2005 Messages : 130 ![]() |
merci pour vos conseils, je vais poster le probleme dans la section algorithme
pourvu que j'arrive a une solution |
|
|
00
|
|
|
#14 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2005 Messages : 130 ![]() |
je vois que la fonction similar_text($string1, $string2, $p); va m'etre utile... car elle donne un pourcentage de difference entre 2 chaines...
qu'en pensez vous? |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com