Получить из дательного падежа все остальные

1. Natuhai 6 17.06.23 11:12 Сейчас в теме
Итак, имеем слово в любом падеже, кроме именительного. Например "кошке". То есть это слово "кошка" в дательном падеже. Далее пытаемся из него получить массив со значением слова "кошка" во всех шести падежах. Ничего не получается. Ни стандартные средства 1С, ни сервис morpher.ru с задачей не справляются. Всегда возвращается все то же значение "кошке". Соответственно вопрос: нет ли у кого готового решения по такой проблеме? Неделю бьюсь ...
По теме из базы знаний
Найденные решения
5. SlavaKron 17.06.23 13:34 Сейчас в теме
(1) Для существительных можете сами сформировать дерево условий исходя из окончания слова.
Для прилагательных сложнее, так как в дательном падеже они имеют одинаковую форму для среднего и мужского рода.
Еще беда с существительными, оканчивающимися на "не": Кришне / вишне - Кришна / вишня, Ване / ванне - Ваня / ванна и т.д.
В прикреплении обработка в качестве первого наброска.
Прикрепленные файлы:
ВнешняяОбработка2.epf
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
5. SlavaKron 17.06.23 13:34 Сейчас в теме
(1) Для существительных можете сами сформировать дерево условий исходя из окончания слова.
Для прилагательных сложнее, так как в дательном падеже они имеют одинаковую форму для среднего и мужского рода.
Еще беда с существительными, оканчивающимися на "не": Кришне / вишне - Кришна / вишня, Ване / ванне - Ваня / ванна и т.д.
В прикреплении обработка в качестве первого наброска.
Прикрепленные файлы:
ВнешняяОбработка2.epf
6. user1826630 17.06.23 13:51 Сейчас в теме
(5) А ещё есть Лошади, Мыши и т.д. Что это - дательный или предложный падеж единственного числа? Или именительный падеж множественного числа?
7. SlavaKron 17.06.23 14:13 Сейчас в теме
(6) В задаче сказано, что на входе слово в дательном падеже.
8. user1826630 17.06.23 14:30 Сейчас в теме
(7) Это частный случай. Обычно, через пару дней он превращается в общий.
12. Natuhai 6 17.06.23 17:57 Сейчас в теме
(8) Согласен, так оно и есть. И в данном случае дательный падеж я привел только для примера.
13. user1826630 17.06.23 18:17 Сейчас в теме
(7) Ну вот и оно - превращение в общий случай.
Опыт не пропьёшь.
Никогда не надо бросаться решать задачу, если она имеет заранее понятный частный вид. Зачем тратить время?
11. Natuhai 6 17.06.23 17:56 Сейчас в теме
(5) Большое спасибо за совет, но подобное решение я уже отработал. Правда на основе справочника. В каждом элементе есть табличная часть со всеми возможными словоформами. Соответственно функция в Запросе собирает все словоформы и по условию ищет слово из параметра. Если находит, то возвращает Наименование элемента, которое и есть это слово в именительном падеже. Просто решил немного усложнить себе задачу и поискать универсальное решение. В то же время Вы правы, скорее всего наиболее удачным вариантом будет просто собрать со временем внутри обработки всевозможные варианты окончаний.
9. user856012 13 17.06.23 15:13 Сейчас в теме
(1)
Неделю бьюсь ...
Это говорит отнюдь не в вашу пользу: мне, например, хватило 10 минут. чтобы понять - задача нерешаема. По крайней мере, в общем случае, то есть полностью.

Причина банальна: "фарш невозможно прокрутить назад" - однозначно восстановить именительный падеж любого слова по дательному.

Потому что каждое слово в именительном падеже имеет только одну форму в дательном... а вот для обратного соответствия есть исключения - два (а может, и больше) разных слова в именительном могут иметь одинаковую форму в дательном. И какое, будем получать?

Чтобы не быть голословным, то вот два примера, которые мне пришли в голову за упомянутые 10 минут: "вине", "каре".

Кушать подано, прошу к столу!
user1826630; +1 Ответить
10. Natuhai 6 17.06.23 17:50 Сейчас в теме
(9) Знали бы Вы, сколько раз я находил решение нерешаемых задач ))) Нет, еще подрыгаюсь ...
14. user1826630 17.06.23 18:43 Сейчас в теме
(10) Ну еще неделю подрыгаешься - и останешься без денег. Лучше бы занялся решаемыми и оплачиваемыми задачами.
15. Natuhai 6 18.06.23 06:47 Сейчас в теме
(14) В этой задаче я и так без денег ))) Это чисто для себя, для программы поиска и обработки ключевых фраз на сайт. Ну и для для самообразования конечно.
16. user856012 13 18.06.23 09:54 Сейчас в теме
(15)
Это чисто для себя, для программы поиска и обработки ключевых фраз на сайт. Ну и для для самообразования конечно.
Ну, это все временно - пока жизнь не заставит позаботиться о... корме. ;-)
user1826630; +1 Ответить
20. user654641_yaga_m 12 20.06.23 12:26 Сейчас в теме
(1)ДД, я бы для "полноты картины" переговорил с каким-то (условно говоря) филологом - знатоком русского языка (теории) - "...о сколько нам открытий чудных..."
2. karamazoff 96 17.06.23 11:17 Сейчас в теме
Э.... а 1С здесь причем? Не думаю что здесь есть готовые решения, google и яндекс api в помощь, в словарях лучше ковыряться в них
3. Natuhai 6 17.06.23 11:38 Сейчас в теме
(2) Вы правы конечно. Если так и не найду быстроработающего универсального решения, буду соответствующий ресурс в интернете искать, чтобы с него нужное значение возвращать.
4. user1826630 17.06.23 12:36 Сейчас в теме
17. arz 18.06.23 10:19 Сейчас в теме
Создать и заполнить орфографический справочник в базе и реквизиты для всех падежей и множественном числе. Грубо, но будет работать, хотя могут быть ошибки - это я про фарш и это надо как-то отдельно контролировать. В любом языке мира не так уж много слов по меркам базы 1С.
18. Oldsad 20.06.23 05:29 Сейчас в теме
(17) как написали выше, в общем случае задача не имеет решения, т.к. разные слова в именительном падеже могут иметь одинаковую форму в других падежах, например: вино, вина
19. arz 20.06.23 11:11 Сейчас в теме
(18) Решение - это необязательно ответ в одно значение. Кстати, я не зря упомянул фарш. Решением может быть коллекция вариантов (значений), а с коллекцией значительно проще работать, чем полностью искать решение с нуля. Любая задача, если она не имеет решения в лоб, может решаться с введенными допущениями в начальных условиях и требованиях к ответу. В данном случае можно предложить механизм облегчающий работу пользователя и этого возможно уже будет достаточно.
21. Natuhai 6 20.06.23 13:41 Сейчас в теме
(19) Я сделал сборку из 4 вариантов. В массив собирается все, что можно:
1. Сначала из обработки переделки слов по окончаниям.
2. Далее по справочнику наиболее частых слов с раскладкой по всем падежам.
3. Поиск силами 1с через "ПолучитьСклоненияСтрокиПоЧислу " и "ПолучитьСклоненияСтроки".
4. Запрос на сайт Morpher.
Далее ищется совпадение слов из предлагаемой фразы. В 90% случаев программа находит то, что нужно. Ну а незначительное количество оставшегося будет исправлено руками. Вполне рабочий вариант.
22. user1826630 20.06.23 14:13 Сейчас в теме
23. Natuhai 6 22.06.23 13:47 Сейчас в теме
(22) Конечно. Очень сильно экономит время. Буквально на лету разбирает семантическое ядро и готовит ключи к публикации.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот