Как преобразовать файл словаря (.dic) в файл аффикса (.aff) для создания списка слов? - PullRequest
2 голосов
/ 04 января 2011

Я смотрю на файл словаря (".dic") и связанный с ним файл "aff".То, что я пытаюсь сделать, - это объединить правила в файле «aff» со словами в файле «dic», чтобы создать глобальный список всех слов, содержащихся в файле словаря.

Документация, лежащая в основе этихфайлы найти сложно.Кто-нибудь знает ресурс, из которого я могу поучиться?

Есть ли какой-нибудь код, который уже сделает это (я дублирую усилие, которое мне не нужно)?

спасибо!

Ответы [ 3 ]

2 голосов
/ 03 июня 2013

Это могут быть Hunspell файлы словарей. К сожалению, команда для создания «глобального» или неповрежденного списка слов полностью поддерживает только простые файлы .aff и .dic.

С документация .

unmunch: list all recognized words of a MySpell dictionary

Синтаксис:

unmunch dic_file affix_file

Попробуйте и посмотрите, что получится. Для генерации всех словоформ только для одного слова, смотрите здесь .

2 голосов
/ 30 марта 2011

Вам нужна утилита munch.exe, чтобы применить правила aff к файлу dic.

1 голос
/ 09 августа 2017

Согласно Наволочка , вот пример использования:

# Download dictionary
wget -O ./dic/es_ES.aff "https://raw.githubusercontent.com/sbosio/rla-es/master/source-code/hispalabras-0.1/hispalabras/es_ES.aff"
wget -O ./dic/es_ES.dic "https://raw.githubusercontent.com/sbosio/rla-es/master/source-code/hispalabras-0.1/hispalabras/es_ES.dic"

# Compile program
wget -O ./dic/unmunch.cxx "https://raw.githubusercontent.com/hunspell/hunspell/master/src/tools/unmunch.cxx"
wget -O ./dic/unmunch.h "https://raw.githubusercontent.com/hunspell/hunspell/master/src/tools/unmunch.h"
g++ -o ./dic/unmunch ./dic/unmunch.cxx

# Generate dictionary
./dic/unmunch ./dic/es_ES.dic ./dic/es_ES.aff 2> /dev/null > ./dic/es_ES.txt.bk
sort ./dic/es_ES.txt.bk > ./dic/es_ES.txt # Opcional
rm ./dic/es_ES.txt.bk # Opcional
...