如何在Python中查找字符串中多次出现的字符串?考虑这一点:
>&燃气轮机&燃气轮机;text=“允许Hello空心”
&燃气轮机&燃气轮机&燃气轮机;text.find(“ll”)
1.
&燃气轮机&燃气轮机&燃气轮机;
因此,ll的第一次出现如预期的那样为1。我如何找到下一次发生的情况
同样的问题也适用于列表。考虑:
>&燃气轮机&燃气轮机;x=['ll','ok','ll']
如何找到所有的ll及其索引
使用正则表达式,可以使用re.finditer查找所有(非重叠)事件:
>&燃气轮机&燃气轮机;进口稀土
&燃气轮机&燃气轮机&燃气轮机;text='Allowed Hello Hollow'
&燃气轮机&燃气轮机&燃气轮机;对于re.finditer中的m('ll',文本):
打印('ll found',m.start(),m.end())
我找到了13个
我找到了1012
我找到了16 18
或者,如果您不想增加正则表达式的开销,也可以重复使用str.find来获取下一个索引:
>&燃气轮机&燃气轮机;text='Allowed Hello Hollow'
&燃气轮机&燃气轮机&燃气轮机;索引=0
&燃气轮机&燃气轮机&燃气轮机;而指数<;len(正文):
index=text.find('ll',index)
如果索引==-1:
打破
打印('ll位于',索引)
索引+=2#+2,因为len('ll')==2
我会在1点找到你
我10点被找到
我16岁就被找到了
这也适用于列表和其他序列