import re
def repl(m, value, counter, NumberL):
counter.i += 1
if counter.i in NumberL:
return value
return m.group()
def replace(text,key,value,NumberL):
counter = lambda x: None
counter.i = 0
return re.sub(rf"(?!\B\w){re.escape(key)}(?<!\w\B)", lambda m: repl(m, value, counter, NumberL), text)
text = 'Suddenly you said goodbye, even though I was passionately in love with you, I hope you stay lonely and live for a hundred years'
print(replace(text,'you','Cleis',[2,3]))
aW1wb3J0IHJlCgpkZWYgcmVwbChtLCB2YWx1ZSwgY291bnRlciwgTnVtYmVyTCk6CiAgICBjb3VudGVyLmkgKz0gMQogICAgaWYgY291bnRlci5pIGluIE51bWJlckw6CiAgICAgICAgcmV0dXJuIHZhbHVlCiAgICByZXR1cm4gbS5ncm91cCgpCgpkZWYgcmVwbGFjZSh0ZXh0LGtleSx2YWx1ZSxOdW1iZXJMKToKICAgIGNvdW50ZXIgPSBsYW1iZGEgeDogTm9uZQogICAgY291bnRlci5pID0gMAogICAgcmV0dXJuIHJlLnN1YihyZiIoPyFcQlx3KXtyZS5lc2NhcGUoa2V5KX0oPzwhXHdcQikiLCBsYW1iZGEgbTogcmVwbChtLCB2YWx1ZSwgY291bnRlciwgTnVtYmVyTCksIHRleHQpCiAgICAKdGV4dCA9ICdTdWRkZW5seSB5b3Ugc2FpZCBnb29kYnllLCBldmVuIHRob3VnaCBJIHdhcyBwYXNzaW9uYXRlbHkgaW4gbG92ZSB3aXRoIHlvdSwgSSBob3BlIHlvdSBzdGF5IGxvbmVseSBhbmQgbGl2ZSBmb3IgYSBodW5kcmVkIHllYXJzJwpwcmludChyZXBsYWNlKHRleHQsJ3lvdScsJ0NsZWlzJyxbMiwzXSkp