Recherche insensible aux fautes de frappe

Fermé
Patro - 8 mars 2021 à 09:41
 Utilisateur anonyme - 8 mars 2021 à 13:58
Bonjour.

J'aimerais savoir quel est le moyen le plus simple pour vérifier qu'une chaine de caractère est contenue dans une autre chaine de caractère, en faisant abstraction des erreurs, comme suit :

Recherche sans erreur :

var maChaine = 'Je suis une chaine de caractère' ;
var maSouschaine = 'suis';
var resultat = maChaine.includes(maSouschaine);

Recherche avec erreur :

var maChaine = 'Je suis une chaine de caractère' ;
var maSouschaine = 'caractères';
var resultat = maChaine.includes(maSouschaine);

Dans le deuxième cas, la variable résultat contient un false, car la sous chaine de caractère contient un caractère supplémentaire. J'aimerais pouvoir faire abstraction de cette erreur de frappe lorsque la comparaison est effectuée.

Merci pour votre aide.

1 réponse

Utilisateur anonyme
Modifié le 8 mars 2021 à 14:00
Bah pour ça, il te faut disposer d'un lexique de mots (70 000 sans les conjugaisons); et faire de la comparaison.
Pour optimiser le temps il faut découper le lexique par ordre alphabétique et faire la recherche sur la première lettre du mot en ne cherchant que dans la section de la lettre.
Mais pour ton plan, bonjour le taf...! Sans parler de l'analyse syntaxique et du contexte.
0