计算字符串中子字符串的重复出现次数

2024-04-26 05:44:32 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有一根这样的绳子

aa = 'booked#booked#available#available#available#available#available#booked#available#booked'

现在我想知道'available'子串在这个字符串中重复出现了多少次。因此,在本例中,它应该是5,因为“available”会重复出现5次,如果有人可以给python库函数本身来获取这个值,这将非常有帮助,regex解决方案也很受欢迎。在

到目前为止我尝试的是

^{pr2}$

很明显给了我6分

aa.count('#available#available')

这又错了。在

import re
count(re.findall('available#'))

也是错误的


Tags: 字符串importrecount解决方案regexaaavailable
2条回答

下面是我在2.7中是如何做到的。在

import re
aa = 'booked#booked#available#available#available#available#available#booked#available#booked'
len(re.findall('#available', aa))

我认为你可以根据你提供的图案安全地去掉英镑标志。在

^{pr2}$

{rtools是针对这些类型的问题:

from itertools import groupby
aa = 'booked#booked#available#available#available#available#available#booked#available#booked'
words = aa.split('#')
for key, group in groupby(words):
    print len(list(group)), key

输出:

^{pr2}$

相关问题 更多 >