我在堆栈溢出中阅读了很多帖子,比较了子字符串搜索的性能(例如Python string search efficiency, Is this the most efficient way to search for a substring?, substring in python等等......)
我还查看了包含abstract.c的源代码实现。
据我所知,内置实现是一个迭代的实现:python docs
python是否有更充分的技术实现来查找子字符串:Boyer–Moore Algorithm, Rabin–Karp algorithm等...... ???
修改
问题已延长: Python: Improving sub-string search by embedding sophisticated algorithms
答案 0 :(得分:10)
实际的cpython字符串搜索实现在这里:
http://hg.python.org/cpython/file/tip/Objects/stringlib/fastsearch.h
似乎使用Boyer-Moore。
答案 1 :(得分:1)
核心实现不提供此级别的功能。
您可以使用Google找到Boyer-Moore或Rabin-Karp for Python的实现。