【发布时间】:2013-11-06 17:12:57
【问题描述】:
我有一个长字符串(例如 AAAABBBBCCCC),我最终希望找到不同子字符串列表中每个成员的所有重叠项(例如 ['AAA', 'AAB', 'ABB', 'BBB']) .
我在以前的 StackOverflow 帖子中发现了一个非常有用的建议 - string count with overlapping occurrences 但是,使用它我似乎无法以 re.findall() 可以识别它们的方式分配子字符串。这可能是愚蠢的,但我似乎无法弄清楚。 ? 似乎在做一些与往常不同的事情......
>>> string = 'AAAABBBBCCCC'
>>> len(re.findall('(?=AAA)', string))
2
>>> substring = 'AAA'
>>> len(re.findall('(?=substring)', string))
0
>>> substring = "'(?=AAA)'"
>>> len(re.findall(substring, string))
0
>>> #This works, but is not overlapping:
>>> substring = 'AAA'
>>> len(re.findall(substring, string))
1
如有任何建议,我将不胜感激!谢谢!
【问题讨论】:
标签: python regex python-2.7 findall