দুটি স্ট্রিং দেওয়া, আমাদের কাজ হল দীর্ঘতম সাধারণ সাব-স্ট্রিং প্রিন্ট করা। আমরা SequenceMatcher.find_longest_match () পদ্ধতি ব্যবহার করে পাইথনের সমস্যা সমাধান করব।
ক্লাস difflib.SequenceMatcher হল একটি নমনীয় শ্রেণী যেকোন প্রকারের অনুক্রমের জোড়া তুলনা করার জন্য, যতক্ষণ না ক্রম উপাদানগুলি হ্যাশেবল হয়৷
find_longest_match(a, x, b, y)
a[a:x] এবং b[b:y] এ দীর্ঘতম মিলিত ব্লক খুঁজুন।
উদাহরণ
ইনপুট:str1 ="pythonprogramming", str2 ="pro"আউটপুট:pro
অ্যালগরিদম
ধাপ 1:দুটি স্ট্রিং লিখুন। ধাপ 2:ইনপুট স্ট্রিং দিয়ে সিকোয়েন্সম্যাচার অবজেক্ট শুরু করুন। ধাপ 3:দীর্ঘতম সাব-স্ট্রিং আউটপুটের মিল খুঁজুন। ধাপ 4:দীর্ঘতম সাবস্ট্রিং প্রিন্ট করুন।
উদাহরণ কোড
# পাইথন প্রোগ্রাম difflib import SequenceMatcher def matchsubstring(m,n) থেকে দীর্ঘতম সাধারণ সাব-স্ট্রিং খুঁজে পেতে:seqMatch =SequenceMatcher(None,m,n) match =seqMatch.find_longest_match(0, len(m), 0, len(n)) if (match.size!=0):print ("Common Substring ::>",m[match.a:match.a + match.size]) else:প্রিন্ট ('কোনও দীর্ঘতম সাধারণ উপ- স্ট্রিং পাওয়া গেলআউটপুট
প্রথম স্ট্রিং pythonprogramming লিখুন দ্বিতীয় স্ট্রিং proCommon Substring ::> pro