如何使用python计算arbabababtybab中bab的出现?

时间:2017-12-23 12:24:30

标签: python-3.x

请注意第二个bab从第一个结束的地方开始。这就是使用in命令无法给出准确结果的原因。

1 个答案:

答案 0 :(得分:2)

您可以使用regex。我想你想要的是 positive lookahead 。这基本上意味着您可以搜索模式的重叠出现(bab)。

所以,我为表达式创建了一个regex101

用Python实现:

import re
s = 'arbabababtybab'
o = re.findall('(?=(bab))', s)
n = len(o)

o(出现次数)作为list的{​​{1}}和['bab', 'bab', 'bab', 'bab']作为其数量( count ) :n

或者,您可以使用字符4来执行slicing

list-comprehension

,它给出了与上面相同的结果。