এই সমস্যার সমাধান করা যেতে পারে স্ট্রিংটিকে উল্টে দিয়ে, প্রতিস্থাপন করা স্ট্রিংটিকে উল্টে দিয়ে, স্ট্রিংটিকে প্রতিস্থাপন করার জন্য স্ট্রিংটির বিপরীতে প্রতিস্থাপন করে এবং অবশেষে ফলাফল পেতে স্ট্রিংটিকে বিপরীত করে।
আপনি সাধারণ স্লাইসিং নোটেশন দ্বারা স্ট্রিংগুলিকে বিপরীত করতে পারেন - [::-1]। স্ট্রিং প্রতিস্থাপন করতে আপনি str.replace(পুরাতন, নতুন, গণনা) ব্যবহার করতে পারেন। উদাহরণস্বরূপ,
def rreplace(s, old, new): return (s[::-1].replace(old[::-1],new[::-1], 1))[::-1] rreplace('Helloworld, hello world, hello world', 'hello', 'hi')
এটি আউটপুট দেবে:
'Hello world,hello world, hi world'
আরেকটি পদ্ধতি যার মাধ্যমে আপনি এটি করতে পারেন তা হল পুরানো স্ট্রিংটিতে একবার স্ট্রিংটিকে বিভক্ত করা এবং নতুন স্ট্রিংয়ের সাথে তালিকায় যোগদান করা। উদাহরণস্বরূপ,
def rreplace(s, old, new): li = s.rsplit(old, 1) #Split only once return new.join(li) rreplace('Helloworld, hello world, hello world', 'hello', 'hi')
এটি আউটপুট দেবে:
'Hello world,hello world, hi world'