Résumé : Calcule la distance de Levenshtein entre deux mots.
Description :
Ce script pourvoit l'eggdrop du package Levenshtein :
Description :
La distance de Levenshtein mesure la similarité entre deux chaînes de caractères.
Elle est égale au nombre minimal de caractères qu'il faut supprimer, insérer ou remplacer pour passer d'une chaîne à l'autre.
(voir http://fr.wikipedia.org/wiki/Distance_de_Levenshtein )
Intérêts :
Syntaxe :
Exemples :Il faut manipuler 4 caractères pour passer du mot "bonjour" au mot "bougeoir" :On peut conclure de cet exemple de 10 lettres qu'il est très similaire avec le 2ème mot avec une distance de 2 seulement.
Il est important d'avoir à l'esprit qu'une distance de 2 entre deux mots de 10 lettres dénote une ressemblance, tandis qu'une distance de 2 entre deux mots de 3 lettres signifie qu'ils sont très différents comme le montre l'exemple suivant :Comme vous le voyez, une distance de 2 ne permet pas de faire beaucoup de modifications dans un mot de 10 lettres mais elle représente un changement radical pour un mot de 3 lettres.
Afin de préserver la pertinence des résultats, vous prendrez soin de toujours lier la tolérance à la longueur, proportionnellement.
Sur ce dernier exemple, on peut voir qu'il y a une distance de 8 entre le 1er mot et le second qui est très différent.
Post support :
https://forum.eggdrop.fr/Librairie-Dista...t-421.html
Ce script pourvoit l'eggdrop du package Levenshtein :
tcl
Package provide Levenshtein 1.0
Description :
La distance de Levenshtein mesure la similarité entre deux chaînes de caractères.
Elle est égale au nombre minimal de caractères qu'il faut supprimer, insérer ou remplacer pour passer d'une chaîne à l'autre.
(voir http://fr.wikipedia.org/wiki/Distance_de_Levenshtein )
Intérêts :
- Permet à un correcteur orthographique de faire des suggestions pour tel mot mal orthographié, en proposant d'autres mots dont la distance de Levenshtein par rapport au premier est faible.
- Permet à une pseudo-IA de type chatterbot d'avoir une tolérance orthographique : si tel mot comparé à tel autre a une distance inférieure à une tolérance donnée, on peut décider qu'il est équivalent.
- ...
Syntaxe :
tcl
levenshtein::distance <string 1> <string 2>
Exemples :
Code :
levenshtein::distance "bonjour" "bougeoir"
Tcl: 4
- BONJOUR
- BOUJOUR -> on remplace le N par un U
- BOUGOUR -> on remplace le J par un G
- BOUGEOUR -> on insère un E
- BOUGEOIR -> on remplace le U par un I
Code :
levenshtein::distance "antiquaire" "antikaire"
Tcl: 2
Il est important d'avoir à l'esprit qu'une distance de 2 entre deux mots de 10 lettres dénote une ressemblance, tandis qu'une distance de 2 entre deux mots de 3 lettres signifie qu'ils sont très différents comme le montre l'exemple suivant :
Code :
levenshtein::distance "pin" "pas"
Tcl: 2
Afin de préserver la pertinence des résultats, vous prendrez soin de toujours lier la tolérance à la longueur, proportionnellement.
Code :
levenshtein::distance "antiquaire" "dimanche"
Tcl: 8
Post support :
https://forum.eggdrop.fr/Librairie-Dista...t-421.html
Changelog
Version 1 par MenzAgitat (05/06/2009)224 téléchargements
Version récupérée suite à crash serveur