- 我正在使用 Python 中的 acora 库来尝试在多个字符串中搜索多个关键字。
- 它有两个我可以用来搜索的功能:
findall
和finditer
findall
返回匹配列表,有点像正则表达式 findall。finditer
返回一个迭代器,逐个查找结果
>>> import acora >>> builder = acora.AcoraBuilder('ab', 'bc', 'de') >>> ac = builder.build() >>> ac.findall('this-is-my-testing-phrase-which-has-ab-and-bc-and-de') [('ab', 36), ('bc', 43), ('de', 50)]
- 我只想知道是否有一个匹配。我不想浪费更多的处理能力,看看是否还有其他类似的东西
findall
。因此, ab在那里的事实已经足够好了。
我可以用迭代器找到这个吗?看看是否最多只有一场比赛?
我问这个是因为我刚刚用 2 个嵌套循环对 acora 与基本字符串匹配进行了计时,并且速度慢了 4 倍,这看起来很荒谬。