我认为这个问题比普通的拼写检查更容易,因为与所有已知的英语单词相比,美国城市列表很小.
无论如何,这就是问题所在:我的文本文件中充满了城市名称; 其中一些拼写正确,一些拼写不正确.
我可以使用什么样的算法来纠正城市名称的所有拼写错误?
你真的需要纠正拼写错误,或者只是用正常的拼写检查器标记它们吗?如果是后者,您只需要获得正确拼写的列表,并确保每个名称与列表中的名称相同.
如果您想要实际纠正它们,您可能希望使用编辑距离的概念来比较拼写错误的字符串与参考列表中的字符串的相似性.然后,您可以使用最接近的匹配替换拼写错误的单词.您可能还希望处理目标城市不在列表中的可能性.
该Levenshtein距离维基百科的文章是另一个很好的资源.