查找接近的字符串匹配项-评估子字符串词匹配程度更高

时间:2019-02-06 18:09:49

标签: python-3.x difflib

我正在尝试查找字符串匹配项(上下文-从用户输入中搜索不和谐的用户)。

自动取款机,我正在尝试difflib。它可以正常工作,但有时似乎返回一些有趣的结果。例如。如果某人的名字包含一个单词,那么搜索该单词可能会导致看起来不尽人意的事物。

我认为这仅仅是因为get_close_matches的工作方式。是否可以建议我尝试其他一些库? (不知道如何量化我要搜索的内容,但也许我希望搜索者对包含与搜索词相似的单词的名称给予更高的分数)

user_names = []
for member in server.members:
    if member.name is not None: user_names.append(member.name)
    if member.nick is not None: user_names.append(member.nick)
user_name = difflib.get_close_matches(user_msg, user_names, n = 1, cutoff = 0.2)

1 个答案:

答案 0 :(得分:0)

过去,我曾使用https://github.com/seatgeek/fuzzywuzzy,提供了一些现成的选择,从单个单词到对更大的字符串进行标记和排序。