স্ট্রিং থেকে নিষিদ্ধ ক্যারেক্টারها [ ' : ', ' ? ', ' \ ', ' / ', ' < ', ' > ', ' | ', ' * ' ] রিমুভ করার ফাংশন बनाने का तरीका আলোচনা করব। উদাহরণস্বরূপ:
Input: str = " Hello: Welco*me/ to Tu>torials point|. " Output: " Hello Welcome to Tutorials point. " Explanation: ইনপুট স্ট্রিং-এ নিষিদ্ধ ক্যারেক্টার থাকায় সেগুলো রিমুভ হয়েছে এবং নতুন স্ট্রিং-এ কোনো নিষিদ্ধ ক্যারেক্টার নেই। Input: str = " How/ are y*ou doi,ng? " Output: " How are you doing "
সমাধানের পদ্ধতি
এই সমস্যায় প্রয়োগ করা যায় এমন একটি সহজ পদ্ধতি:
স্ট্রিংকে যেকোনো সাইড থেকে ট্রাভার্স করুন।
প্রতিটি ক্যারেক্টার চেক করুন যে সেটি নিষিদ্ধ ক্যারেক্টারগুলোতে আছে কিনা।
যদি নিষিদ্ধ ক্যারেক্টারগুলোতে থাকে, তবে ক্যারেক্টারটি রিমুভ করুন।
ক্যারেক্টার রিমুভ করার সময় আমরা إما একটি নাল (null) ভ্যালু ইনসার্ট করতে পারি বা একটি নতুন স্ট্রিং-এ নিষিদ্ধ ক্যারেক্টার ছাড়া সব ক্যারেক্টার ইনসার্ট করতে পারি।
উদাহরণ
উপরোক্ত পদ্ধতির জন্য C++ কোড
#include <stdio.h> #include <bits/stdc++.h> using namespace std; // নিষিদ্ধ ক্যারেক্টার রিমুভ করার ফাংশন। void removeforbidden(char* str){ int j = 0; int n = strlen(str); // স্ট্রিং ট্রাভার্স করে নিষিদ্ধ ক্যারেক্টার সার্চ করুন। for(int i = 0;i<n;i++){ switch(str[i]){ case '/': case '\\': case ':': case '?': case '"': case '<': case '>': case '|': case '*': // নিষিদ্ধ ক্যারেক্টারের জায়গায় নাল ভ্যালু ইনসার্ট করুন। str[j] = '\0'; default: str[j++] = str[i]; } } // স্ট্রিং প্রিন্ট করুন। for(int i = 0;i<n;i++) cout << str[i]; return; } int main(){ char str[] = "Hello: Welco*me/ to Tu>torial?s point|."; removeforbidden(str); return 0; }
আউটপুট
Hello, Welcome to Tutorials point.
উপরোক্ত কোডের ব্যাখ্যা
স্ট্রিং ট্রাভার্স করার সময় সুইচ কেস (switch case) ব্যবহার করা হয়েছে যেখানে স্ট্রিংয়ের প্রতিটি এলিমেন্ট কেস ক্যারেক্টারদের সাথে চেক করা হয়।
যদি কোনো ক্যারেক্টার কেস ক্যারেক্টারের সমান হয়, তবে সেটিকে নাল ক্যারেক্টারের সাথে রিপ্লেস করা হয়।
উপসংহার
এই টিউটোরিয়ালে, আমরা নিষিদ্ধ ক্যারেক্টার [ ' : ', ' ? ', ' \ ', ' / ', ' < ', ' > ', ' | ', ' * ' ] রিমুভ করার একটি ফাংশন তৈরি করেছি। আমরা একটি সহজ পদ্ধতি আলোচনা করেছি স্ট্রিং ট্রাভার্স করে এবং ক্যারেক্টারগুলো নিষিদ্ধ ক্যারেক্টারদের সাথে ম্যাচ করে। আমরা এই সমস্যার জন্য C++ প্রোগ্রামও আলোচনা করেছি যা আমরা C, Java, Python ইত্যাদি প্রোগ্রামিং ভাষায়ও করতে পারি। আশা করি আপনি এই টিউটোরিয়ালটিকে উপকারী পাবেন।