import re
def findall_overlapped(r, s):
res = []
reg = r'^{}$'.format(r)
for q in range(len(s)):
for w in range(q,len(s)):
cur = s[q:w+1]
if re.match(reg, cur):
res.append(cur)
return res
rex = r'a\w+b'
print(findall_overlapped(rex, 'axaybzb'))
aW1wb3J0IHJlCgpkZWYgZmluZGFsbF9vdmVybGFwcGVkKHIsIHMpOgogIHJlcyA9IFtdCiAgcmVnID0gcidee30kJy5mb3JtYXQocikKICBmb3IgcSBpbiByYW5nZShsZW4ocykpOgogIAlmb3IgdyBpbiByYW5nZShxLGxlbihzKSk6CiAgCQljdXIgPSBzW3E6dysxXQogIAkJaWYgcmUubWF0Y2gocmVnLCBjdXIpOgogIAkJCXJlcy5hcHBlbmQoY3VyKQogIHJldHVybiByZXMKCnJleCA9IHInYVx3K2InCnByaW50KGZpbmRhbGxfb3ZlcmxhcHBlZChyZXgsICdheGF5YnpiJykp