我在堆栈溢出中阅读了很多比较子字符串搜索性能的帖子(例如Python 字符串搜索效率, 这是搜索子字符串的最有效方法吗?, python 中的子字符串等...)
我还查看了 contains abstract.c的源代码实现。
据我所知,内置实现是一个迭代的:python docs
python 是否有更充分的技术来查找子字符串:Boyer–Moore 算法、 Rabin–Karp 算法等...???
编辑
该问题已扩展: Python:通过嵌入复杂算法改进子字符串搜索。
我在堆栈溢出中阅读了很多比较子字符串搜索性能的帖子(例如Python 字符串搜索效率, 这是搜索子字符串的最有效方法吗?, python 中的子字符串等...)
我还查看了 contains abstract.c的源代码实现。
据我所知,内置实现是一个迭代的:python docs
python 是否有更充分的技术来查找子字符串:Boyer–Moore 算法、 Rabin–Karp 算法等...???
编辑
该问题已扩展: Python:通过嵌入复杂算法改进子字符串搜索。
实际的 cpython 字符串搜索实现在这里:
http://hg.python.org/cpython/file/tip/Objects/stringlib/fastsearch.h
它似乎使用了 Boyer-Moore。
核心实现不提供此级别的功能。
您将使用 Google 找到适用于 Python 的 Boyer-Moore 或 Rabin-Karp 的实现。