赞
踩
Python中的FuzzyWuzzy模块可以对两个字符串进行模糊匹配,而在有些场景下,我们需要在多个字段中进行一一对应的匹配,这时候我们可以拓展FuzzyWuzzy模块来实现这一需求。
一、FuzzyWuzzy模块简介
FuzzyWuzzy是一个基于Levenshtein距离的字符串匹配工具,它可以用来计算字符串的相似度。它支持以下四种模式:
1、Ratio模式:用于计算两个字符串之间的简单比率匹配得分。
2、Partial Ratio模式:用于计算两个字符串之间的部分比率匹配得分。
3、Token Sort Ratio模式:用于计算两个字符串之间的标记排序比率匹配得分。
4、Token Set Ratio模式:用于计算两个字符串之间的标记集比率匹配得分。
除此之外,它还提供了两个函数——process和extractBests,用于处理多个字符串之间的匹配问题。
二、多字段模糊匹配
在现实生活中,我们往往需要在多个字段(多列)中进行一一对应的匹配。例如,假设我们有一个包含身份证号、姓名、手机号、地址等信息的数据表,现在我们需要在该表中查找与某一个人信息最为匹配的记录。
针对这种情况,我们可以基于FuzzyWuzzy模块,自行编写一个函数来实现多个字段之间的模糊匹配。具体方法如下:
1、首先,我们需要对每一条记录中所有字段进行拼接,形成一个长字符串。
2、然后,我们将待查询人员的信息也进行同样的操作得到一个长字符串。
3、接着,我们使用FuzzyWuzzy模块计算这两个长字符串之间的相似度得分。
4、最后,我们将得分最高的记录返回即可。
下面是一个简单的示例代码,其中包含了Fuzz
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。