আপনি যদি একটি রেগুলার এক্সপ্রেশন তৈরি করার সময় সংঘটনের সংখ্যা নির্দিষ্ট করতে চান তাহলে আপনি কোয়ান্টিফায়ার ব্যবহার করতে পারেন। নিম্নলিখিত সারণী জাভা রেগুলার এক্সপ্রেশন −
দ্বারা সমর্থিত কোয়ান্টিফায়ারগুলিকে তালিকাভুক্ত করেকোয়ান্টিফায়ার | বিবরণ | উদাহরণ |
---|---|---|
re* | শূন্য বা তার বেশি ঘটনা। | [0-9]*:0 বা তার বেশি সংখ্যার সাথে মেলে। |
আবার? | এক বা, কোনো ঘটনাই নেই। | [0-9]?:0 বা 1 সংখ্যার সাথে মেলে। |
re+ | এক বা একাধিক ঘটনা। | [0-9]+:এক বা একাধিক সংখ্যার সাথে মেলে। |
পুনরায়{n} | n ঘটনা। | [0-9]{3}:3টি সংখ্যার সাথে মেলে। |
re{n, } | কমপক্ষে n ঘটনা। | [0-9]{3, }:কমপক্ষে 3টি সংখ্যার সাথে মেলে৷ |
re{n, m} | কমপক্ষে n এবং সর্বাধিক m ঘটনা। | [0-9]{2, 5}:যদি দেওয়া ইনপুটটি 3 থেকে 5 সংখ্যা বিশিষ্ট একটি সংখ্যা হয় তাহলে মেলে। |
উদাহরণ
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Example { public static void main( String args[] ) { String regex = "[0-9]{3,6}"; Scanner sc = new Scanner(System.in); System.out.println("Enter 5 input strings: "); String input[] = new String[5]; for (int i=0; i<5; i++) { input[i] = sc.nextLine(); } //Creating a Pattern object Pattern p = Pattern.compile(regex); System.out.println("Matched values: "); for(int i=0; i<5;i++) { //Creating a Matcher object Matcher m = p.matcher(input[i]); if(m.matches()) { System.out.println(m.group()+": accepted "); } } } }
আউটপুট
Enter 5 input strings: 12 154 4587 478365 4578952 Matched values: 154: accepted 4587: accepted 478365: accepted