Alternation (বা OR অপারেটর) রেগুলার এক্সপ্রেশন (Regex) এর একটি গুরুত্বপূর্ণ বৈশিষ্ট্য, যা দুটি বা তার বেশি প্যাটার্নের মধ্যে মিল খুঁজে বের করার জন্য ব্যবহৃত হয়। Alternation বা OR অপারেটর (|) ব্যবহার করে, আপনি দুটি বা একাধিক প্যাটার্নের মধ্যে যেকোনো একটি মেলে এমন স্ট্রিং খুঁজে পেতে পারেন।
Alternation (|) কী?
Alternation (|) একটি লজিক্যাল OR অপারেটর, যা রেগুলার এক্সপ্রেশনে দুটি বা তার বেশি প্যাটার্নের মধ্যে যেকোনো একটি ম্যাচ হওয়ার শর্ত সৃষ্টি করে। এটি মূলত দুটি প্যাটার্নের মধ্যে যেকোনো একটি স্ট্রিং মিলে গেলে সেটি একটি সঠিক ম্যাচ হিসেবে গণ্য করে।
Alternation অপারেটর কাজ করে কিভাবে?
- যখন
|ব্যবহার করা হয়, তখন এটি দুটি বা একাধিক বিকল্প প্যাটার্ন তৈরি করে। - OR অপারেটরটি প্রথম প্যাটার্ন এবং দ্বিতীয় প্যাটার্নের মধ্যে যেকোনো একটি ম্যাচ হলে তা মিলিয়ে দেখবে এবং স্ট্রিংটি সঠিক বলে গণ্য করবে।
- যদি প্রথম প্যাটার্নটি মেলে না, তবে দ্বিতীয় প্যাটার্নটি পরীক্ষা করা হবে, এবং এর মধ্যেও কোনটি মেললে সেটি সঠিক হিসেবে গণ্য হবে।
Alternation উদাহরণ:
a|b:- এই রেগুলার এক্সপ্রেশনটি এমন স্ট্রিংগুলি ম্যাচ করবে যেখানে
aবাbযেকোনো একটি আছে। - উদাহরণ:
- "apple" → match (যেহেতু
aআছে) - "bat" → match (যেহেতু
bআছে) - "cat" → no match (যেহেতু neither
anorbis found)
- "apple" → match (যেহেতু
- এই রেগুলার এক্সপ্রেশনটি এমন স্ট্রিংগুলি ম্যাচ করবে যেখানে
(dog|cat):- এই রেগুলার এক্সপ্রেশনটি এমন স্ট্রিং ম্যাচ করবে যেখানে "dog" অথবা "cat" আছে।
- উদাহরণ:
- "dog" → match ("dog" is found)
- "cat" → match ("cat" is found)
- "rabbit" → no match (neither "dog" nor "cat" is found)
Alternation এর একটি উদাহরণ Java তে:
import java.util.regex.*;
public class AlternationExample {
public static void main(String[] args) {
String text = "apple banana orange";
// Create a pattern to match either "apple" or "orange"
Pattern pattern = Pattern.compile("apple|orange");
Matcher matcher = pattern.matcher(text);
// Find and display matches
while (matcher.find()) {
System.out.println("Found match: " + matcher.group());
}
}
}
ব্যাখ্যা:
Pattern.compile("apple|orange"): এটি এমন একটি রেগুলার এক্সপ্রেশন তৈরি করে যাappleঅথবাorangeএর মধ্যে যেকোনো একটি স্ট্রিংকে ম্যাচ করবে।matcher.find(): এটি স্ট্রিংয়ের মধ্যে রেগুলার এক্সপ্রেশন মেলানো অংশ খুঁজে বের করবে।matcher.group(): এটি ম্যাচ হওয়া স্ট্রিংটি ফেরত দেবে।
আউটপুট:
Found match: apple
Found match: orange
Alternation এর ব্যবহার:
- বিভিন্ন শব্দ বা প্যাটার্ন খোঁজা: যদি আপনি বিভিন্ন শব্দ বা প্যাটার্নের মধ্যে যেকোনো একটি খুঁজতে চান, তখন আপনি
|অপারেটর ব্যবহার করতে পারেন। - প্যাটার্ন কোড সহজ করা: অনেক সময় একাধিক প্যাটার্নের মধ্যে মিল খুঁজতে গেলে কোড জটিল হয়ে যায়। Alternation ব্যবহার করে আপনি প্যাটার্নগুলোকে একত্রিত করে কোডটি আরো পরিষ্কার এবং সোজা করতে পারেন।
Alternation বা | অপারেটর রেগুলার এক্সপ্রেশনে একটি অত্যন্ত গুরুত্বপূর্ণ টুল, যা বিভিন্ন প্যাটার্নের মধ্যে OR অপারেশন ব্যবহার করে মিল খুঁজে বের করার কাজ করে। এটি একাধিক বিকল্প প্যাটার্নের মধ্যে কোনটি স্ট্রিংয়ে মেলে তা খুঁজে পেতে সহায়ক হয়।
Read more