import re
print(len(re.findall('ANA', 'BANANA')))
这输出1,但是我想用包含字符计算匹配,所以输出应该是2.可以使用re findall来完成吗?
答案 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?