2010-04-19 64 views
3

我有名字的列表对一些代码检查,看是否存在人物哪个,如果是做一些东西..查找名称,如果名称拼写错误

我的问题是我想处理名称输入错误的情况我有一个名字列表

Bob 
Frank 
Tom 
Tim 
John 

如果我输入Joohn,我想让我问我是否意思是约翰。如果我输入Tm,我会被问到是否我的意思是Tim,如果我说不,它会问我是否意味着Tom ..等。

有没有人做过类似这样的事情?

回答

6

如果名称不出现在列表中,你可以使用算法,如Levenshtein distanceSoundex,以确定哪些列表中的条目是最接近的,并建议那些

1

的第一件事是在列表中查找看看你是否有完全匹配。如果没有,则计算用户输入的单词与列表中的每个元素之间的Levenshtein distance。你建议最低的那个。