1

我在我的应用程序中使用 aspell 进行拼写检查(ac/c++ 应用程序),我想用它在自定义工作列表中找到最佳替代方案。我不想使用标准字典,因为我只想在我的单词列表中查找单词。我可以找到将单词添加到字典的方法(aspell_speller_add_to_personal 和 aspell_speller_add_to_session),但我不知道如何从一个空字典开始,然后我可以在运行时填充它。

有没有人这样做过,或者知道怎么做?或者,对于在单词列表中选择“最佳匹配”的算法有什么建议吗?

4

1 回答 1

3

我大约三年前就这样做了。这是一种复杂的方式,包括从现有文件创建字典数据结构、删除它并使用 aspeller::Dictionary::add() 添加单词。这很艰难。

如果您不必使用 aspell,您可以尝试hunspell,它可能更容易定制,也可能不容易定制。

另请参阅Peter Norvig关于编写拼写校正器的伟大论文。

于 2009-08-18T07:45:19.400 回答