FuzzyWuzzy 字符串匹配 - 区分大小写

问题描述 投票:0回答:4

我正在使用 SeatGeek 的 FuzzyWuzzy 字符串匹配模块

我发现在使用 token_set_ratio 搜索算法时,大小写的微小差异会产生截然不同的结果。

例如,如果我在文件中查找短语“我正在吃”,我会得到 100% 的匹配。但是如果短语是“我正在吃”,只要改变一个字母的大小写,我就有 65% 的匹配度。

有没有办法让算法不区分大小写?

python case-insensitive fuzzy-search fuzzywuzzy
4个回答
2
投票

token_set_ratio() 默认不区分大小写

from fuzzywuzzy import fuzz
fuzz.token_set_ratio("I am eating", "i am eating")
=> 100

1
投票

我遇到了同样的问题,您可能使用的是 Ratio 而不是 TokenSetRatio ...


0
投票

如果你通过

fuzz
here 的原始代码,你会发现
fuzz.token_set_ratio
在进行序列匹配之前将字符串转换为小写。

此外,您可能需要在此处查看来自 SeatGeek 工程师的这篇 stackoverflow 帖子,以便更清楚地了解比率用法。

希望这有帮助


0
投票

我刚刚将要比较的字符串转换为小写:

fuzz.token_set_ratio("I am eating".lower(), "i am eating".lower())

这给了我100分

© www.soinside.com 2019 - 2024. All rights reserved.