Python里统计一个字符串中另一个字符串的个数

举例说明:s='abababab'统计s中字符串‘aba'的个数答案应为3个的时候用Python2.X版本如何写程序?如果答案为2个的时候,即被统计过的字符不再参与统计,... 举例说明:s= 'abababab'

统计s中字符串‘aba'的个数
答案应为3个的时候
用Python2.X版本如何写程序?
如果答案为2个的时候,即被统计过的字符不再参与统计,那么代码如何写?
希望代码能精简一些。
拓展:如果要替换第二个'aba’为‘bab’
程序又应该怎么写?
求教。
展开
 我来答
百度网友5311d79
2014-09-03 · TA获得超过1.9万个赞
知道大有可为答主
回答量:6356
采纳率:71%
帮助的人:3146万
展开全部

答案为3(用正则):

>>> import re
>>> s= 'abababab'
>>> len(re.findall(r'(?=aba)', s))
3

答案为2,用字符串的count方法:

>>> import string
>>> s= 'abababab'
>>> s.count('aba')
2

 

替换第二个'aba’为‘bab’,用字符串的切片方法(可能方法丑陋了点,初学者见谅):

>>> s= 'abababab'
>>> pos = s.find('aba')
>>> sNew = s[pos+1:].replace('aba', 'bab', 1)
>>> if pos == 0:
...  s[pos] + sNew 
... elif pos > 0:
...  s[:pos] + sNew
...  
'abbabbab'
albumin
推荐于2017-09-06 · TA获得超过1.2万个赞
知道大有可为答主
回答量:4889
采纳率:87%
帮助的人:2327万
展开全部
s= 'abababab'
不重复统计
s.count('aba')
重复统计

import re
reg=re.compile("(?=aba)")
length=len(reg.findall(s))
print(length)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式