Артём Петренков: чтобы ответить на Ваш вопрос, нужно прочесть 100 000 строк :) 100%-надежных алгоритмов не существует вообще, но хотелось бы качественное решение.
Артём Петренков: Нет. Попробуйте, например, проанализировать слово НАДЕЖДА. pymorphy2 дает список вариантов (не всегда исчерпывающий и далеко не всегда правильный), а чтобы выбрать правильный вариант, нужно анализировать контекст. Это очень непростая задача.
Артём Петренков: спасибо еще раз за рекламу morpher.ru, надеюсь, ее уже все увидели :)
Судя по тому, что Вы советуете обратиться к фрилансерам, Вы просто не представляете себе объем задачи. Написать программу на pymorphy2 по Вашим советам даже для очень простых случаев не получилось и не получится. "Двойной" в винительном падеже не только "двойной", но и "двойного", и зависит это от контекста. www.morfologija.ru/%D1%81%D0%BB%D0%BE%D0%B2%D0%BE%...
То, что Вы не знаете о более простом решении не значит, что его нет.
Захаров Александр: написал в комментариях к самому вопросу. Если кратко: именительный падеж, число бывает любое, существительное, как правило, на втором месте, но далеко не всегда.
Артём Петренков: сейчас я примерно так и делаю. Использую pymorphy2 - он много чего умеет: определять часть речи, падеж, число, склонять по падежам... pymorphy2.readthedocs.io/en/latest Но значение многих слов зависит от контекста, поэтому при таком методе ошибки неизбежны. К тому же, должно быть еще более простое решение :)
Артём Петренков: потому что:
1. Я не знаю, на каком месте окажется существительное, а на каком прилагательное. Дешевые кредиты, кредиты дешевые.
2. Я не знаю, в каком числе имя существительное. Дешевый кредит, дешевые кредиты.
3. Довольно часто встречаются дополнительные слова. Дешевые кредиты ДЛЯ ПЕНСИОНЕРОВ.
Артём Петренков: исходные данные - это имя существительное в именительном падеже плюс прилагательное, а иногда и кое-что еще, например, "ВЫГОДНЫЙ КРЕДИТ для пенсионеров". Глаголов там, скорее всего, нет вообще.
Искать управляющее слово трудно, это похоже на изобретение колеса (библиотеки морфологического разбора фраз). Признаюсь, да, мне бы хотелось найти готовое решение, я не могу поверить в то, что его нет.
Алексей Уколов: какие именно жалобы Вы считаете бессмысленными?
Если по этому вопросу, то просто поставьте себя на мое место.
Хотели бы Вы получить на Ваш вопрос такие ответы?
Morpher - платный сервис, morfologija.ru склоняет только по словам.
В комментариях я написал, почему предложенные решения не подходят.
Я благодарен всем ответившим, но решения проблемы до сих пор нет.
Когда вопрос получает хотя бы один ответ, даже неправильный, он просто тонет среди других, его не видят люди, которые действительно могут помочь.
Великий и могучий русский язык - самый лучший язык в мире.
Русские программисты - самые талантливые программисты в мире.
Не могу поверить, что до сих пор не существует Open Source библиотеки для того, чтобы просклонять по падежам парочку слов!
morpher.ru
Платный, а у меня не менее 100 000 словосочетаний.
www.morfologija.ru
Просклонять по одному слову и pymorphy2 для Python умеет, но в том-то и дело, что склонять нужно словосочетания!
Подробнее тут: morpher.ru/Myths.aspx