import re
def substring_range(s, substring):
for i in re.finditer(re.escape(substring), s):
yield (i.start(), i.end())
s = "abcdegfbcd"
substring = "bcd"
print([x for x in substring_range(s, substring)])
aW1wb3J0IHJlCmRlZiBzdWJzdHJpbmdfcmFuZ2Uocywgc3Vic3RyaW5nKToKCWZvciBpIGluIHJlLmZpbmRpdGVyKHJlLmVzY2FwZShzdWJzdHJpbmcpLCBzKToKCQl5aWVsZCAoaS5zdGFydCgpLCBpLmVuZCgpKQoKcyA9ICJhYmNkZWdmYmNkIgpzdWJzdHJpbmcgPSAiYmNkIgpwcmludChbeCBmb3IgeCBpbiBzdWJzdHJpbmdfcmFuZ2Uocywgc3Vic3RyaW5nKV0p