使用Python实现的模糊查找器。
项目描述
使用Python实现的模糊查找器。匹配字符串列表中的部分字符串条目。工作方式类似于SublimeText和Vim的Ctrl-P插件中的模糊查找器。
快速开始
$ pip install fuzzyfinder or $ easy_install fuzzyfinder
用法
>>> from fuzzyfinder import fuzzyfinder
>>> suggestions = fuzzyfinder('abc', ['defabca', 'abcd', 'aagbec', 'xyz', 'qux'])
>>> list(suggestions)
['abcd', 'defabca', 'aagbec']
>>> # Use a user-defined function to obtain the string against which fuzzy matching is done
>>> collection = ['aa bbb', 'aca xyz', 'qx ala', 'xza az', 'bc aa', 'xy abca']
>>> suggestions = fuzzyfinder('aa', collection, accessor=lambda x: x.split()[1])
>>> list(suggestions)
['bc aa', 'qx ala', 'xy abca']
>>> suggestions = fuzzyfinder('aa', ['aac', 'aaa', 'aab', 'xyz', 'ada'])
>>> list(suggestions)
['aaa', 'aab', 'aac', 'ada']
>>> # Preserve original order of elements if matches have same rank
>>> suggestions = fuzzyfinder('aa', ['aac', 'aaa', 'aab', 'xyz', 'ada'], sort_results=False)
>>> list(suggestions)
['aac', 'aaa', 'aab', 'ada']
功能
简单,易于理解
无外部依赖,仅使用python std lib。
它是如何工作的
描述算法的博客文章: http://blog.amjith.com/fuzzyfinder-in-10-lines-of-python
类似项目
https://github.com/seatgeek/fuzzywuzzy - 使用levenshtein距离进行模糊匹配和自动纠错。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分布
fuzzyfinder-2.2.0.tar.gz (13.9 kB 查看哈希值)
构建分布
fuzzyfinder-2.2.0-py3-none-any.whl (15.0 kB 查看哈希值)
关闭
fuzzyfinder-2.2.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b7699fca41230241c5312dff624029a10e40cc7f695e44290b8f2e8e070c4bb4 |
|
MD5 | 4d8ab346a7b5550d4c62fbfcc3afa24e |
|
BLAKE2b-256 | e12b653ded7c1b2110eb576b692ae619ea1b29d7e3446e513685968a5f3b2bec |
关闭
fuzzyfinder-2.2.0-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1c60e5225bf435646e87eec3ef3d5bd094c5d5a4e4d069d0a4a07d515e990035 |
|
MD5 | 73b2a4e4687afb2cbfaf82e92af3f2b7 |
|
BLAKE2b-256 | 8cf9e38ecd7ac5bbfb175c6b6aec9ae2c893caede8dd6e21dd71b316b9005ee7 |