Cześć, mam tablicę z komendami np.:
let commands = ['test','help','get','set','remove'];
pobieram od użytkownika wpisany przez niego ciąg znaków i sprawdzam, czy taka komenda istnieje, jeżeli tak - to się nic nie dzieje (nie jest to potrzebne do pokazania problemu) a jeżeli nie to są dwie możliwości:
"Nie ma takiej komendy!"
lub
"Nie ma takiej komendy! Czy chodziło Ci o: komenda"
Podobnie jak robi to google, użytkownik wpisuje komendę, z literówką:
/tett
a program wyświetla mu:
"Nie ma takiej komendy! Czy chodziło Ci o: test"
Sprawdzałem coś takiego https://medium.com/@willsentance/how-to-write-your-own-spellchecker-and-autocorrect-algorithm-in-under-80-lines-of-code-6d65d21bb7b6 ale tutaj poprawiane są słowa ze 'słownika'.
Zrobiłem też takie coś:
komenda.forEach((e)=>{
if( e.indefOf( komenda_od_uzytkownika ) >1 ){
console.log("Chodzi Ci o: "+e);
}else{
console.log("Nie ma takiej komendy!");
}
});
Ale to nie działa na żadne literówki, i ogólnie jest strasznie ograniczone