Склонение по падежам...

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Гость

Сообщение Гость »

Hello, clalist

Возникла необходимость склонять фамилии, имена и т.д. по падежам.
В базе они в именительном падеже, а выводить нужно то в родительном, то в дательном...
В общем такая трабла ;(
Может кто-нибудь знает как с ней справиться???

C6.1 ABC

--
Respect,
nix mailto:nix@hotbox.ru

(Добавление)

Мне в свое время для оформления документов тоже понадобилось решать такую задачу. Не скажу, что решена она была на 100% автоматично, но по крайней мере пользователю в большинстве случаев оставалось только согласиться с предлагаемым программой вариантом.
Получается, что в зависимости от нескольких последних букв фамилии/имени/отчества возникает достаточно ограниченный набор вариантов их трансформации в другие падежи (сейчас уже не скажу точно, но чуть ли не в пределах двух десятков). Поэтому я просто сделал табличку, в которой были эти соответствия, и искал от самого длинного к самому короткому. При необходимости пользователь мог руками добавить отсутствующий вариант.

WBR, Igor Timofeev

(Добавление)

Привет!

Поиск от самого длинного может быть и весьма долгим, поэтому при солидных объёмах базы и массовой обработке вызовет недоумение юзеров. Поэтому можно сделать и так:
1. Делаем табличку перекодировки (как ты и говорил)
2. Делаем справочник по всем спользуемым именам и пр
3. Натравливаем перекодировик на эту таблицу и получаем ещё 2-5 таблиц (с падежами)
4. именно эти таблицы и используем в программе
5. Юзер может менять не только правило, но и конкретное исключение, что уже всяко гибче и шибче
6. заодно можно косяки в базе автоматом править (в БД прописки Новосибирска около 2% всех записей с грубыми ошибками). Так вот через переходники и исправляем - в базе хранится косяк, а в интерфейсе всё рулез.

Александр Агеев (aageev@satren.ru)
Написал: ClaList(2)
Гость

Сообщение Гость »

Мне понравилась реализация в падежей в проверялке FineReader.
Но в реальной задаче нужно, наверное, сажать отдельного человека на заполнение базы падежей. С именами и отчествами достаточно просто. Всеж-таки их ограниченное количество. А вот с фамилиями - хуже...

Я старался все документы переделывать так, чтобы был только именительный падеж.

С уважением,
В.Смелик.

(Добавление)

Года 4 назад попался текст склонялки.
Чей - не помню. Для порядка попытаюсь порыться в архивах, чтобы упомянуть автора.
Кое-что пришлось переделать. Работает, вроде бы, достаточно удачно.
(Склонения - достаточно хорошо алгоритмизируются. Исключений не очень много)
APP-шку высылаю на мыло.

Вячеслав Кочетков slavnew@mail.ru

(Добавление)

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

Сергей - chusha@mail333.com ; chusha@hotbox.ru
Написал: ClaList(2)
Гость

Сообщение Гость »

См. аттач. Автора, к сож., не помню.
Рядом с полями Фам-Имя-Отч я всегда ставлю чекбоксы "Не склонять", т.к. очень часто попадаются национальные ФИО, которые сам черт не разберет как склонять

--
Best regards,
morkovin mailto:morkovin@interdacom.ru
Волгоград
Написал: ClaList(2)
Ответить