fork download
  1. import re
  2.  
  3. num = 2
  4. replace_with = 1110
  5.  
  6. def repl(m):
  7. if m.group(num):
  8. return "{}{}{}".format(m.group()[0:m.start(num)-m.span()[0]], replace_with, m.group()[m.span()[1]-m.end(num)-1:])
  9. #print("Start: {}\nEnd: {}\nMatch Span :{}\ngroup: {}".format(m.start(num),m.end(num), m.span(), m.group()))
  10. else:
  11. return m.group()
  12.  
  13. string = 'foo42buz'
  14. pattern = re.compile(r'(\d)(\d)buz')
  15. print(re.sub(pattern,repl,string))
  16.  
Success #stdin #stdout 0s 23304KB
stdin
Standard input is empty
stdout
foo41110buz