Я ищу библиотеку, которая может выполнить морфологический анализ немецких слов, то есть она преобразует любое слово в его корневую форму и предоставляет метаинформацию об анализируемом слове.
Например:
gegessen -> essen
wurde [...] gefasst -> fassen
Häuser -> Haus
Hunde -> Hund
Мой список желаний:
- Он должен работать как с существительными, так и с глаголами.
- Я знаю, что это очень сложная задача, учитывая сложность немецкого языка, поэтому я также ищу библиотеки, которые обеспечивают только приближения или могут быть точными только на 80%.
- Я бы предпочел библиотеки, которые не работают со словарями, но опять же я готов идти на компромисс, учитывая обстоятельства.
- Я бы также предпочел библиотеки C / C ++ / Delphi для Windows, потому что это облегчит их интеграцию, но .NET, Java, ... тоже подойдет.
- Это должна быть бесплатная библиотека. (L) GPL, MPL, ...
РЕДАКТИРОВАТЬ: Я знаю, что нет никакого способа выполнить морфологический анализ без какого-либо словаря из-за неправильных слов.
Когда я говорю, я предпочитаю библиотеку без словаря, я имею в виду те полноценные словари, которые отображают каждое слово:
arbeite -> arbeiten
arbeitest -> arbeiten
arbeitet -> arbeiten
arbeitete -> arbeiten
arbeitetest -> arbeiten
arbeiteten -> arbeiten
arbeitetet -> arbeiten
gearbeitet -> arbeiten
arbeite -> arbeiten
...
У этих словарей есть несколько недостатков, в том числе огромный размер и невозможность обработки неизвестных слов.
Конечно, все исключения могут быть обработаны только с помощью словаря:
esse -> essen
isst -> essen
eßt -> essen
aß -> essen
aßt -> essen
aßen -> essen
...
(сейчас мой мозг кружится :))