কম্পিউটার

স্ট্রিং লাইব্রেরি ব্যবহার করে স্ট্রিং ম্যাচিং করার জন্য C++ প্রোগ্রাম


এখানে আমরা দেখব কিভাবে স্ট্রিং লাইব্রেরি ফাংশনগুলি C++ এ স্ট্রিংগুলিকে মেলানোর জন্য ব্যবহার করা যেতে পারে। এখানে আমরা মূল স্ট্রিং-এ সাবস্ট্রিং-এর উপস্থিতি পেতে find() অপারেশন ব্যবহার করছি। এই find() পদ্ধতিটি প্রথম অবস্থান প্রদান করে যেখানে স্ট্রিং পাওয়া যায়। এখানে আমরা সমস্ত মিল পেতে এই find() ফাংশনটি একাধিকবার ব্যবহার করছি।

আইটেম পাওয়া গেলে, এই ফাংশন অবস্থান ফেরত. কিন্তু যদি এটি পাওয়া না যায়, এটি স্ট্রিং::npos.

ফেরত দেবে
Input: The main string “aabbabababbbaabb” and substring “abb”
Output: The locations where the substrings are found. [1, 8, 13]

অ্যালগরিদম

স্ট্রিং_ফাইন্ড(main_str, sub_str)

ইনপুট − প্রধান স্ট্রিং এবং চেক করার জন্য সাবস্ট্রিং

আউটপুট − প্রধান স্ট্রিং-এ সাবস্ট্রিং-এর অবস্থান

pos := 0
while index = first occurrence of sub_str into the str in range pos to end of the string, do
   print the index as there is a match
   pos := index + 1
done

উদাহরণ কোড

#include<iostream>
using namespace std;
main() {
   string str1 = "aabbabababbbaabb";
   string str2 = "abb";
   int pos = 0;
   int index;
   while((index = str1.find(str2, pos)) != string::npos) {
      cout << "Match found at position: " << index << endl;
      pos = index + 1; //new position is from next element of index
   }
}
থেকে

আউটপুট:

Match found at position: 1
Match found at position: 8
Match found at position: 13

  1. কিভাবে C++ প্রোগ্রাম ব্যবহার করে একটি প্রোগ্রাম চালু করবেন?

  2. স্ব-সংগঠিত তালিকা ব্যবহার করে অনুসন্ধান সম্পাদনের জন্য C++ প্রোগ্রাম

  3. বিটওয়াইজ অপারেটর ব্যবহার করে সংযোজন অপারেশন সম্পাদনের জন্য C++ প্রোগ্রাম

  4. C++ প্রোগ্রাম Recursion ব্যবহার করে একটি বাক্যকে বিপরীত করতে