我正在为基于Web的所见即所得编辑器实现拼写检查功能。我目前使用Damerau-Levenshtein距离算法生成拼写建议列表。这一切都很顺利,但我想知道如何改进功能。
具体来说,我的实现目前无法处理组合单词。例如,我想能够检测到“areyou”并建议使用“are you”。我认为可以通过在可能的位置将潜在的组合单词分开并测试两个部分来实现此目的。由于所有英语单词必须至少有一个元音字母,因此我认为可以寻找元音字母以帮助我决定在哪里分割单词。
Damerau-Levenshtein距离算法非常有用;很明显,其他人对此进行了更多思考。是否有类似聪明的算法可供检测组合单词,或者我已经走在正确的轨道上了?