Python重新发现允许相同字符的多次出现

时间:2016-11-23 01:10:48

标签: python

import re
print(len(re.findall('ANA', 'BANANA')))

这输出1,但是我想用包含字符计算匹配,所以输出应该是2.可以使用re findall来完成吗?

1 个答案:

答案 0 :(得分:2)

您无法使用当前标准re模块执行此操作。但是,正如其他线程所指出的,您可以使用提供regex标志的较新overlapped模块:

import regex
print(len(regex.findall('ANA', 'BANANA', overlapped=True)))

有关regex模块的信息,请访问:https://pypi.python.org/pypi/regex

您可能需要将其安装为:

pip install regex

提及的其他主题:How to find overlapping matches with a regexp?Python regex find all overlapping matches?