xmoonlight, да я понял, что ты снова сливаешься.
Благо сказано тут достаточно, чтоб любой(и ты тоже, как бы там не вилял) понял мою правоту. Так что удаляюсь.
xmoonlight,
>сокращение или нет: гора - не сокращают,
Сокращают что угодно.
Сокращена одна буква - <1%(но не 0)
>город - возможно на 50%.
>"Спуск с города" - крайне маловероятен.
Не менее 10% - фавелы там, Сан-Франциско какой-нить .
Так или иначе - тут твой анализатор должен знать как слово "спуск" логически сочетается со словом "город", чтоб постановить "крайнюю маловероятность". Очень сомневаюсь в такой разумности твоего софта. (без бессмысленной траты кучи человеколет)
Всё будет упираться в эффективность твоего "анализатора вероятностей", что в свою очередь приводит к отсутствию гарантированного результата. Достоверность никогда не будет равна единице. Да и выше 0.5 то без нейронки - сильно сомневаюсь.
xmoonlight, и как ты эту маловероятность выразишь в коде? А если автор имел ввиду именно второе? Это ведь пример придуманный на коленке, в реальности существует ещё бесконечность вариантов неоднозначных сочетаний.
В любом случае вступление на поле вероятностей - уже, строго говоря, проигрыш классического детерминизма).
С тем же успехом можно тогда уж нейронку обучить.
Человеческий язык слишком неоднозначен. Проблема какбэ сводится к тому, чтобы заставить компьютер его понимать. Древний и фундаментальный вопрос, до сих пор не имеющий решения. Причина появления, собственно, языков программирования.
Так что не важен способ реализации.
xmoonlight, meh, вы всегда так сливаетесь. А меж тем ваши великие тайные знания нужны автору вопроса, а не мне.
Без ИИ универсальное решение невозможно. Некоторые случаи и человек не с первого раза разберёт. Всё что можно реально сделать - наворотить постоянно дополняемую на ходу кучу регулярок, покрывающую большинство кейсов. Но и близко не все.
Ещё можно заняться серьёзным синтаксическим анализатором, что займёт вечность, при не сильно лучшем результате.
Сборников быть не может, потому что дравера это прокладка между виндой и железом, сколько вариантов железа - столько драйверов.
Есть программы которые подбирают по коду оборудования дрова, но они глючное дерьмо, винда сейчас сама это делает гораздо надёжней.
В целом, в наше время ничего не нужно, винда всё сама поставит. Возможно не последние версии, но работать будет. Если нужен лучший вариант - то только вручную пройтись по официальным сайтам для каждой присутствующей в сборке железки и скачать официальные драйвера.
Полноценно - никак.
Можно забить исключениями "все" возможные сокращения, а также исключить случаи когда после знаков препинания не идут заглавные буквы(или тире, или кавычки, или...), но сокращения могут попадаться абсолютно любые и потому задача в общем случае - не решаема.
Нет. Есть только боль и страдание.
Визуальное редактирование в браузерах - это одна из самых жутких вещей. Даже редакторы, разработка которых ведётся десятилетиями всё равно не лишены периодических багов.
Тащем не рекомендую пытаться что-то пилить с нуля. Очень не рекомендую.)
Ivan Bogachev, да вот нихрена. На typescript можно нормально писать. Типы это всего лишь типы, и Java до свободы типизации typescript очень далеко. То о чём я говорю это не Java-синтаксис, а Java-подход. Весь этот корпоративный булщит, который нахрен в js(да и нигде вообще) не нужен. Все вот эти ставшие притчей во языцех фабрики фабрик фабрик и прочие аннотированые инъекции зависимостей с переподвывертом. Когда я изучал angular у меня кровь текла из глаз от каждой страницы документации. Не потому что непонятно, а потому что мерзость. Каждый его элемент - самый нитухлейший случай оверинжиниринга из возможных - когда пытаются охватить как можно больше кейсов, переусложняют всё и вся, при этом простейшие кейсы нужные в 99% случаев как раз из коробки не работают, так как "принесены в жертву универсальности - используйте сторонние либы".
Ух, НЕНАВИСТЬ.
Благо сказано тут достаточно, чтоб любой(и ты тоже, как бы там не вилял) понял мою правоту. Так что удаляюсь.