检索模糊匹配的范围

Retrieving the span of a fuzzy match

我正在尝试在较大的文本中模糊搜索较短的文本。

常见的python库,例如fuzzywuzzy和rapidfuzz,支持“partial_ratio”功能,但那些只是return一个分数,而不是匹配的位置。

是否有一些库或函数可以用来获取模糊匹配所在的位置(类似于正则表达式匹配的 span 方法)?

我看了fuzzywuzzy and noted that finding the index of a match is an open issue. The same is true for RapidFuzz

这促使我“(类似于正则表达式匹配的 span 方法)”围绕这个方法做一些研究。在我的研究过程中,我发现了 Python 包 regex. The package's Readme talks about fuzzy matching。我没有使用过这个包,但它似乎对解决您的用例很有用。