Денис » 27.02.2008 (Ср) 21:27
Andrey Fedorov
Вот. Исходник, как всегда утерян (а жаль) я восстановил по памяти. Нужно в коде просто дополнить правила словарей для специфичных имен. и все.
Я исходил из того, что такие переобразования делаются как правило в серьезных программах кадрового и прочего человеческого учетя, в связи с чем из словарей выпадали всякие "Петя", "Маша", "Шура" и прочие. В именах подразумевался паспортный стиль, - "Петр", "Марья", "Александр"
В примере для подбора по словарю отсекаются последние буквы. для более точного анализа были блоки, отсекавшие по 2 буквы, допустим "ья" заменялось на "и", а это могли быть и "Марья" и "Илья" и в обоих случаях работали.
В данном примере я не заморачивался с объединениями-разъединениями, поскольку это все легко делается и не имеет отношения к рассматриваемому сейчас вопросу. А в утерянном варианте у меня сначала захватывалась строка, в которой предполагалось наличие ФИО, дробилась по пробелу на три слова, каждое слово переводилось в родительный падеж, а затем все снова склеивалось в одну строку и возвращалось.
И последнее - как мне кажется, в 1с и прочих из этой оперы алгоритм тот-же. мало того, что он нечувствителен к полу, согласно ему можно автоматически определять пол с 75% вероятностью.
- Вложения
-
- Example.rar
- пример перевода падежа
(атака словарем)
- (1.56 Кб) Скачиваний: 103
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.