我们如何在Python正则表达式中使用re.finditer()方法?

根据Python文档,

re.finditer(pattern, string, flags=0)

 返回一个迭代器,该迭代器在字符串的RE模式的所有非重叠匹配上产生MatchObject实例。从左到右扫描字符串,并以找到的顺序返回匹配项。空匹配项包含在结果中。 

以下代码显示了Python regex中re.finditer()方法的使用

示例

import re
s1 = 'Blue Berries'
pattern = 'Blue Berries'
for match in re.finditer(pattern, s1):
    s = match.start()
    e = match.end()
    print 'String match "%s" at %d:%d' % (s1[s:e], s, e)

输出结果

Strings match "Blue Berries" at 0:12