আপনি সর্বাধিক n+1 বিভাজন সহ সাবস্ট্রিং-এ বিভক্ত করে একটি স্ট্রিং-এ একটি সাবস্ট্রিং-এর nম উপস্থিতি খুঁজে পেতে পারেন। ফলাফল তালিকায় যদি n+1 এর চেয়ে বড় আকার থাকে, তাহলে এর অর্থ হল সাবস্ট্রিংটি n বারের বেশি ঘটে। এর সূচী একটি সাধারণ সূত্র দ্বারা পাওয়া যেতে পারে, মূল স্ট্রিংয়ের দৈর্ঘ্য - শেষ বিভক্ত অংশের দৈর্ঘ্য - সাবস্ট্রিংয়ের দৈর্ঘ্য।
উদাহরণ
def findnth(string, substring, n): parts = string.split(substring, n + 1) if len(parts) <= n + 1: return -1 return len(string) - len(parts[-1]) - len(substring) findnth('foobarfobar akfjfoobar afskjdf foobar', 'foobar', 2)
আউটপুট
এটি আউটপুট দেবে:
31
এর মধ্যে n 0 থেকে শুরু হয়। এটি পরিবর্তন করা খুবই তুচ্ছ।