Java String Split এবং Replace অপারেশনগুলি RegEx (Regular Expressions) এর মাধ্যমে করা যায়। এটি খুবই শক্তিশালী এবং কার্যকরী একটি টুল, যা স্ট্রিংয়ে নির্দিষ্ট প্যাটার্ন অনুসারে অংশ বিভক্ত (split) বা প্রতিস্থাপন (replace) করতে সাহায্য করে। নিচে কিছু উদাহরণ দেখানো হল।
1. String Split Using Regular Expressions
split() মেথড ব্যবহার করে স্ট্রিংকে নির্দিষ্ট একটি প্যাটার্ন অনুসারে ভাগ করা যায়। এই প্যাটার্ন সাধারণত একটি রেগুলার এক্সপ্রেশন (RegEx) হিসেবে ব্যবহার হয়।
উদাহরণ: একটি স্ট্রিংকে স্পেস (space) দিয়ে ভাগ করা
public class SplitExample {
public static void main(String[] args) {
String str = "Java is a powerful language";
// স্পেস দ্বারা স্ট্রিং ভাগ করা
String[] words = str.split("\\s+");
for (String word : words) {
System.out.println(word);
}
}
}
আউটপুট:
Java
is
a
powerful
language
ব্যাখ্যা:
এখানে, "\\s+" একটি রেগুলার এক্সপ্রেশন যা একটি বা একাধিক স্পেসকে প্রতিনিধিত্ব করে। split() মেথড এই প্যাটার্ন অনুসারে স্ট্রিংটিকে ভাগ করেছে।
উদাহরণ: কমা (,) দিয়ে স্ট্রিং ভাগ করা
public class SplitExample {
public static void main(String[] args) {
String str = "Apple,Orange,Banana,Cherry";
// কমা দ্বারা স্ট্রিং ভাগ করা
String[] fruits = str.split(",");
for (String fruit : fruits) {
System.out.println(fruit);
}
}
}
আউটপুট:
Apple
Orange
Banana
Cherry
ব্যাখ্যা:
এখানে, "split(",")" দ্বারা স্ট্রিংটিকে কমার মধ্যে ভাগ করা হয়েছে।
2. String Replace Using Regular Expressions
replaceAll() মেথডটি ব্যবহার করে আপনি স্ট্রিংয়ের মধ্যে একটি নির্দিষ্ট প্যাটার্ন অনুসারে টেক্সট প্রতিস্থাপন করতে পারেন।
উদাহরণ: স্ট্রিংয়ে শব্দ প্রতিস্থাপন
public class ReplaceExample {
public static void main(String[] args) {
String str = "I love Java programming. Java is amazing.";
// "Java" শব্দটি "Python" দিয়ে প্রতিস্থাপন করা
String newStr = str.replaceAll("Java", "Python");
System.out.println(newStr);
}
}
আউটপুট:
I love Python programming. Python is amazing.
ব্যাখ্যা:
এখানে "replaceAll("Java", "Python")" মেথডটি স্ট্রিংয়ের সমস্ত "Java" শব্দকে "Python" দিয়ে প্রতিস্থাপন করেছে।
উদাহরণ: একটি স্ট্রিংয়ে একাধিক স্পেস মুছে ফেলা
public class ReplaceExample {
public static void main(String[] args) {
String str = "This is a test string.";
// একাধিক স্পেসকে একক স্পেস দিয়ে প্রতিস্থাপন করা
String newStr = str.replaceAll("\\s+", " ");
System.out.println(newStr);
}
}
আউটপুট:
This is a test string.
ব্যাখ্যা:
এখানে, "\\s+" একটি রেগুলার এক্সপ্রেশন যা এক বা একাধিক স্পেসকে প্রতিনিধিত্ব করে। replaceAll("\\s+", " ") মেথডটি সমস্ত অতিরিক্ত স্পেসগুলোকে একক স্পেস দিয়ে প্রতিস্থাপন করেছে।
উদাহরণ: স্ট্রিংয়ের একটি নির্দিষ্ট প্যাটার্ন প্রতিস্থাপন
public class ReplaceExample {
public static void main(String[] args) {
String str = "The price is 1000 dollars.";
// সংখ্যা প্রতিস্থাপন করা
String newStr = str.replaceAll("\\d+", "X");
System.out.println(newStr);
}
}
আউটপুট:
The price is X dollars.
ব্যাখ্যা:
এখানে, "\\d+" একটি রেগুলার এক্সপ্রেশন যা একটি বা একাধিক ডিজিটকে প্রতিনিধিত্ব করে। replaceAll("\\d+", "X") মেথডটি সমস্ত সংখ্যাকে "X" দিয়ে প্রতিস্থাপন করেছে।
3. Split and Replace Combined Example
আপনি একই স্ট্রিংয়ে split() এবং replaceAll() মেথডগুলো একসঙ্গে ব্যবহার করতে পারেন।
উদাহরণ: স্পেস দ্বারা স্ট্রিং বিভক্ত করে প্রতিটি অংশে একটি শব্দ প্রতিস্থাপন
public class SplitAndReplaceExample {
public static void main(String[] args) {
String str = "I am learning Java programming";
// স্পেস দ্বারা স্ট্রিং বিভক্ত করা
String[] words = str.split("\\s+");
// প্রতিটি শব্দে "Java" প্রতিস্থাপন করা
for (int i = 0; i < words.length; i++) {
words[i] = words[i].replaceAll("Java", "Python");
}
// ফলাফল প্রিন্ট করা
for (String word : words) {
System.out.print(word + " ");
}
}
}
আউটপুট:
I am learning Python programming
ব্যাখ্যা:
এখানে, স্ট্রিংকে প্রথমে স্পেস দিয়ে ভাগ করা হয়েছে এবং তারপর "Java" শব্দটি "Python" দিয়ে প্রতিস্থাপন করা হয়েছে।
সারাংশ:
- split(): একটি স্ট্রিংকে একটি নির্দিষ্ট প্যাটার্ন অনুযায়ী ভাগ করে।
- replaceAll(): একটি স্ট্রিংয়ের মধ্যে একটি প্যাটার্ন অনুসারে টেক্সট প্রতিস্থাপন করে।
এই উল্লিখিত উদাহরণগুলি আপনাকে Java-তে RegEx ব্যবহার করে স্ট্রিং ভেঙে ফেলা এবং প্রতিস্থাপন করার পদ্ধতিগুলি বুঝতে সাহায্য করবে।
Read more