সাবএক্সপ্রেশন/মেটাক্যারেক্টার "re{n,m}" পূর্ববর্তী এক্সপ্রেশনের কমপক্ষে n এবং সর্বোচ্চ m বার ওকারেন্স ম্যাচ করে।
উদাহরণ ১: "xyy{2,4}" প্যাটার্ন
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexExample {
public static void main(String args[]) {
String regex = "xyy{2,4}";
String input = "xxyyzxxyyyyxyyzxxyyzz";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(input);
int count = 0;
while (m.find()) {
count++;
}
System.out.println("ম্যাচের সংখ্যা: " + count);
}
}
আউটপুট
ম্যাচের সংখ্যা: 1
ব্যাখ্যা: xyy{2,4} মানে 'x' এবং তারপর 'y' ২ থেকে ৪ বার। ইনপুটে "xyyyy" (x + y ৪ বার) একবার ম্যাচ করেছে।
উদাহরণ ২: ১ থেকে ২০ অক্ষরের নাম যাচাই
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexExample {
public static void main(String args[]) {
// কমপক্ষে ১, সর্বোচ্চ ২০ অক্ষর
String regex = "[a-zA-Z]{1,20}";
Scanner sc = new Scanner(System.in);
System.out.println("ছাত্রের নাম দিন:");
String name = sc.nextLine();
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(name);
if (m.matches()) {
System.out.println("নাম উপযুক্ত");
} else {
System.out.println("নাম অনুপযুক্ত");
}
}
}
আউটপুট ১
ছাত্রের নাম দিন: Mouktika নাম উপযুক্ত
আউটপুট ২
ছাত্রের নাম দিন: ka 34 নাম অনুপযুক্ত
আউটপুট ৩
ছাত্রের নাম দিন: Sri Veera Venkata Satya Sai Suresh Santosh Samrat নাম অনুপযুক্ত
নোট: উদাহরণ ৩-এ স্পেস থাকায় ম্যাচ হয়নি (রেগেক্সে স্পেস নেই)। পুরো নাম যাচাই করতে [a-zA-Z\\s]{1,20} বা আলাদা লজিক লাগবে।