我想找到所有引用这种模式的子串:一些字符+一些字符+第一个字符。 现在我在Python 2.7中有这个:
T = "i was here"
m = re.findall(r"([a-z])[a-z](\1)", T)
print m
这给出了:
[('e', 'e')]
似乎我非常接近实现我的目标,但我无法弄清楚如何在此处获得'ere'?
答案 0 :(得分:2)
只需将括号括在中间字符周围:
>>> m = re.findall(r"([a-z])([a-z])(\1)", T)
>>> m
[('e', 'r', 'e')]
>>> ''.join(m[0])
'ere'
答案 1 :(得分:1)
这也有效:
>>> m = re.findall(r"(([a-z])([a-z])(\2))", T)
>>> m
[('ere', 'e', 'r', 'e')]
>>> m[0][0]
'ere'