একটি রেগুলার এক্সপ্রেশনকে দেওয়া স্ট্রিংয়ের সাথে মিলিয়ে যাচাই করার জন্য নিচের ধাপগুলো অনুসরণ করতে হয়:
Patternক্লাসেরcompile()মেথড দিয়ে রেগুলার এক্সপ্রেশন কম্পাইল করুন।Patternক্লাসেরmatcher()মেথডে ইনপুট স্ট্রিং পাস করেMatcherঅবজেক্ট পান।Matcherক্লাসেরmatches()মেথড আহ্বান করুন। মিল খুঁজে পেলেtrue, নাও পেলেfalseরিটার্ন করে।
উদাহরণ: শুধু ডেট যাচাই
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Sample {
public static void main(String args[]) {
List dates = new ArrayList();
dates.add("25-12-1990");
dates.add("25/12/1990");
dates.add("2010-06-24 06:30");
dates.add("05-02-1990");
dates.add("1920-11-03 12:40");
// ডেট ম্যাচ করার রেগুলার এক্সপ্রেশন (yyyy-MM-dd ফরম্যাট)
String regex = "[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])";
Pattern pattern = Pattern.compile(regex);
for (Object date : dates) {
Matcher matcher = pattern.matcher((CharSequence) date);
System.out.println(date + ": " + matcher.matches());
}
}
}
আউটপুট
25-12-1990: false
25/12/1990: false
2010-06-24: true
05-02-1990: false
1920-11-03: true
নোট: উপরের রেগেক্স শুধু yyyy-MM-dd ফরম্যাটে ডেট যাচাই করে, স্ল্যাশ (/) বা সময়সহ ডেটের জন্য ফলাফল false।
উদাহরণ: ডেট ও টাইম দুটোই যাচাই
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Sample {
public static void main(String args[]) {
List dates = new ArrayList();
dates.add("25-12-1990");
dates.add("25/12/1990");
dates.add("2010-06-24 12:30:40");
dates.add("05-02-1990 44:205:40");
dates.add("1920-11-03 06:25:40");
// ডেট ও টাইম ম্যাচ করার রেগুলার এক্সপ্রেশন (yyyy-MM-dd HH:mm:ss)
String regex = "[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1]) (2[0-3]|[01][0-9]):[0-5][0-9]:[0-5][0-9]";
Pattern pattern = Pattern.compile(regex);
for (Object date : dates) {
Matcher matcher = pattern.matcher((CharSequence) date);
System.out.println(date + ": " + matcher.matches());
}
}
}
আউটপুট
25-12-1990: false
25/12/1990: false
2010-06-24 12:30:40: true
05-02-1990 44:205:40: false
1920-11-03 06:25:40: true