strstr() ফাংশন string.h-এ একটি পূর্বনির্ধারিত ফাংশন। এটি একটি স্ট্রিং এ একটি সাবস্ট্রিং এর উপস্থিতি খুঁজে পেতে ব্যবহৃত হয়। মিলের এই প্রক্রিয়াটি '\0' এ থামে এবং এটি অন্তর্ভুক্ত করে না।
strstr() এর সিনট্যাক্স নিম্নরূপ −
char *strstr( const char *str1, const char *str2)
উপরের সিনট্যাক্সে, strstr() স্ট্রিং str1 এ স্ট্রিং str2 এর প্রথম উপস্থিতি খুঁজে পায়। একটি প্রোগ্রাম যা strstr() প্রয়োগ করে তা নিম্নরূপ −
উদাহরণ
#include <iostream> #include <string.h> using namespace std; int main() { char str1[] = "Apples are red"; char str2[] = "are"; char *ptr; ptr = strstr(str1, str2); if(ptr) cout<<"Occurance of \""<< str2 <<"\" in \""<< str1 <<"\" is at position "<<ptr - str1 + 1; else cout<<"There is no occurance of \""<< str2 <<"\" in "<<str1; return 0; }
আউটপুট
উপরের প্রোগ্রামটির আউটপুট নিম্নরূপ -
Occurance of "are" in "Apples are red" is at position 8
উপরের প্রোগ্রামে, str1 এবং str2 যথাক্রমে "Apples are red" এবং "are" মান দিয়ে সংজ্ঞায়িত করা হয়েছে। এটি নীচে দেওয়া হল -
char str1[] = "Apples are red"; char str2[] = "are"; char *ptr;
পয়েন্টার ptr “Apples are red”-এ “are”-এর প্রথম ঘটনার দিকে নির্দেশ করে। এটি strstr() ফাংশন ব্যবহার করে করা হয়। এর জন্য কোড স্নিপেট নিচে দেওয়া হল -
ptr = strstr(str1, str2);
যদি পয়েন্টার ptr-এ একটি মান থাকে, তাহলে str1-এ str2-এর অবস্থান প্রদর্শিত হবে। অন্যথায়, এটি প্রদর্শিত হয় যে ptr1 তে ptr2 এর কোন ঘটনা নেই। এটি নীচে দেখানো হয়েছে -
if(ptr) cout<<"Occurance of \""<< str2 <<"\" in \""<< str1 <<"\" is at position "<<ptr - str1 + 1; else cout<<"There is no occurance of \""<< str2 <<"\" in "<<str1;এ \""<