Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
О, наконец-то реально полезный бот:)
Наверное правильнее будет переписать это в POST дабы иметь запас по размеру отправляемого текста, но в моем случае вполне хватает и этого: все-таки мессенджеры не предназначены для лонгридов.
var natural = require('natural'),
dictionary = require('./single-words-354984.json'), // нагугленный словарь, вручную перекованный на ["слово1", "слово2", ... ]
spellcheck = new natural.Spellcheck(dictionary);
var topic = "swapign";
if (!spellcheck.isCorrect(topic))
{
// исправление
var MAX_DISTANCE = 1;
var corrections = spellcheck.getCorrections(topic, MAX_DISTANCE);
if (corrections.length > 0)
topic = corrections[0];
}
// topic == "swaping"
Есть такой алгоритм: http://xpoint.ru/know-how/VebAlgoritmyi/RabotaSTekstami/RasstanovkaPerenosov
Но мне кто-то говорил, что в каком-то граничном кейсе там есть ошибка.
Telegram боты: в помощь редактору