Bonjour à tous,
Je voudrais comparer deux chaînes en établissant un %.
Par exemple Toto est à 75% pareil à Tota.
Y a déjà une fonction pour ça?
JPD
Bonjour à tous,
Je voudrais comparer deux chaînes en établissant un %.
Par exemple Toto est à 75% pareil à Tota.
Y a déjà une fonction pour ça?
JPD
Ce n'est pas si simple.
À mon boulot, on doit utiliser tout un algorithme compliqué pour ça, avec un histogramme des caractères présents dans les deux chaînes, un calcul pour les caractères à la même position relative, (plus un ajustement pour détecter l'ajout ou la suppression d'un caractère), et le tous utilisant des tables de pondération pour le résultat...
Et on a *encore* des problèmes avec.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Très intéressant et peu encourageant.
J'y travaille, mais pour arriver à un résultat disons, satisfaisant.
Je pourrai tenter de le vendre s'il est bon ;-)
Merci quand même. Je ne suis pas seul à bécher ça agrémente le voyage.
JPD
je l'ai fait pour les dates..
L'algo est hypersimple..
Voici mon ULM
Je compare les deux chaînes avec strlen(1)/strlen(2) = %
Je compare les deux chaînes avec strspn = %
Je compte les mots de plus de trois lettres dans la deuxième chaîne qui sont [strstr] dans la première (Nombre trouvé/nombre possibles) = %
Je dois établir une priorité pour ces trois valeurs.
C'est ce qu'on appelle pondérer?
JPD
Partager