在Java中匹配不精确的公司名称

前端之家收集整理的这篇文章主要介绍了在Java中匹配不精确的公司名称前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个公司数据库.我的应用程序接收按名称引用公司的数据,但名称可能与数据库中的值不完全匹配.我需要将传入的数据与它所引用的公司进行匹配.

例如,我的数据库可能包含名为“A. B. Widgets& Co Ltd.”的公司.而我的传入数据可能会引用“AB Widgets Limited”,“A.B.Widgets and Co”或“A B Widgets”.

公司名称中的某些单词(A B Widgets)对于匹配比其他单词(Co,Ltd,Inc等)更重要.避免错误匹配很重要.

公司的数量足够小,我可以在内存中维护他们的名字地图,即.我可以选择使用Java而不是sql来查找正确的名称.

你会如何用Java做到这一点?

解决方法

您可以在DB / map& amp;中尽可能地标准化格式.输入(即转换为大写/小写),然后使用动态编程中的 Levenshtein (edit) distance metric来根据所有已知名称对输入进行评分.

然后,您可以让用户确认匹配&如果他们不喜欢它,给他们选择将这个值输入你的已知名字列表(第二个想法 – 这可能是给用户太多的力量……)

猜你在找的Java相关文章