【ahocorasick】最长匹配失效

304 阅读1分钟

问题

使用2.0.0版本的pyahocorasick最长匹配是错误的

import ahocorasick

ac = ahocorasick.Automaton()
keywords = ["风车", "大风车啊"]
for i in keywords:
    ac.add_word(i, i)
ac.make_automaton()
res = ac.iter_long("大风车啊")
print(list(res))

# 这里期望是 大风车啊 
[(2, '风车')]

解决办法

这个包确实是错了,issue里也有人提出来了但是没改。

解决方法是退回正确的版本,使用1.4.4版本