Quantifiers: *, +, ?, {n}, {n,}, {n,m}

Regex এর বেসিক সিনট্যাক্স - জাভা রেজেক্স (Java Regex) - Java Technologies

242

Quantifiers (পরিমাণ নির্দেশক) হল Regex এর গুরুত্বপূর্ণ অংশ যা একটি নির্দিষ্ট প্যাটার্নের পুনরাবৃত্তির সংখ্যা নির্ধারণ করে। Java Regular Expressions এ আপনি Quantifiers ব্যবহার করে একটি প্যাটার্ন কতবার হতে পারে বা হওয়া উচিত তা নির্দিষ্ট করতে পারেন। বিভিন্ন ধরনের Quantifiers যেমন *, +, ?, {n}, {n,}, {n,m} প্রোগ্রামে টেক্সট ম্যাচিং ও বিশ্লেষণের কাজকে সহজ করে।

Quantifiers এর ধরন এবং ব্যবহার

1. * (Asterisk):

  • অর্থ: প্যাটার্নটি 0 অথবা তার চেয়ে বেশি বার হতে পারে।
  • ব্যবহার: এটি একটি নির্দিষ্ট ক্যারেক্টারের পুনরাবৃত্তি চিহ্নিত করে এবং এটি ওই ক্যারেক্টারটির 0 বা তার অধিক উপস্থিতি মেনে চলে।

উদাহরণ:

  • a* অর্থাৎ এক বা একাধিক a থাকতে পারে অথবা কোনো a না-ও থাকতে পারে।
  • টেক্সট: "aaa", "a", "" (শূন্য স্ট্রিং) সবই এটি ম্যাচ করবে।
Pattern pattern = Pattern.compile("a*");
Matcher matcher = pattern.matcher("aaabaaa");
System.out.println(matcher.matches());  // Output: true

2. + (Plus):

  • অর্থ: প্যাটার্নটি 1 অথবা তার চেয়ে বেশি বার হতে পারে।
  • ব্যবহার: এটি একটি ক্যারেক্টার বা প্যাটার্নের একবার বা তার অধিক উপস্থিতি নির্দেশ করে।

উদাহরণ:

  • a+ অর্থাৎ এক বা একাধিক a থাকতে হবে (শূন্য সংখ্যা নন)।
  • টেক্সট: "a", "aa", "aaa" - সবই এটি ম্যাচ করবে, কিন্তু "" (শূন্য স্ট্রিং) ম্যাচ করবে না।
Pattern pattern = Pattern.compile("a+");
Matcher matcher = pattern.matcher("aaabaaa");
System.out.println(matcher.matches());  // Output: true

3. ? (Question Mark):

  • অর্থ: প্যাটার্নটি 0 অথবা 1 বার উপস্থিত হতে পারে।
  • ব্যবহার: এটি কোনো ক্যারেক্টারের উপস্থিতি প্রয়োজন, কিন্তু এটি ঐ ক্যারেক্টারের উপস্থিতির সংখ্যা 0 অথবা 1 নির্ধারণ করতে সাহায্য করে।

উদাহরণ:

  • a? অর্থাৎ 0 বা 1 বার a থাকতে পারে।
  • টেক্সট: "a", "" (শূন্য স্ট্রিং) - এই দুটি স্ট্রিংই ম্যাচ করবে, কিন্তু "aa" ম্যাচ করবে না।
Pattern pattern = Pattern.compile("a?");
Matcher matcher = pattern.matcher("aaabaaa");
System.out.println(matcher.matches());  // Output: false

4. {n} (Exact Count):

  • অর্থ: প্যাটার্নটি নির্দিষ্ট সংখ্যক বার উপস্থিত হতে হবে।
  • ব্যবহার: এটি প্যাটার্নটি ঠিক n বার উপস্থিত হওয়ার জন্য নির্ধারণ করে।

উদাহরণ:

  • a{3} অর্থাৎ ঠিক তিনটি a থাকতে হবে।
  • টেক্সট: "aaa" - এটি ম্যাচ করবে, কিন্তু "aa", "aaaa" এগুলো ম্যাচ করবে না।
Pattern pattern = Pattern.compile("a{3}");
Matcher matcher = pattern.matcher("aaa");
System.out.println(matcher.matches());  // Output: true

5. {n,} (At Least n):

  • অর্থ: প্যাটার্নটি n অথবা তার বেশি বার উপস্থিত হতে হবে।
  • ব্যবহার: এটি প্যাটার্নটি n অথবা তার বেশি বার উপস্থিত হওয়া প্রয়োজন।

উদাহরণ:

  • a{2,} অর্থাৎ দুটি বা তার বেশি a থাকতে হবে।
  • টেক্সট: "aa", "aaa", "aaaa" - সবই এটি ম্যাচ করবে, কিন্তু "a" ম্যাচ করবে না।
Pattern pattern = Pattern.compile("a{2,}");
Matcher matcher = pattern.matcher("aaa");
System.out.println(matcher.matches());  // Output: true

6. {n,m} (Range of Count):

  • অর্থ: প্যাটার্নটি n থেকে m বার পর্যন্ত উপস্থিত হতে পারে।
  • ব্যবহার: এটি প্যাটার্নটি n থেকে m বার পর্যন্ত উপস্থিত হওয়ার জন্য নির্ধারণ করে।

উদাহরণ:

  • a{2,4} অর্থাৎ দুই থেকে চারটি a থাকতে হবে।
  • টেক্সট: "aa", "aaa", "aaaa" - সবই এটি ম্যাচ করবে, কিন্তু "a" এবং "aaaaa" ম্যাচ করবে না।
Pattern pattern = Pattern.compile("a{2,4}");
Matcher matcher = pattern.matcher("aaa");
System.out.println(matcher.matches());  // Output: true

Regex-এর Quantifiers আপনাকে একটি প্যাটার্নের পুনরাবৃত্তি সংখ্যা নির্ধারণ করতে সহায়ক, যা আপনার টেক্সট ম্যানিপুলেশন এবং matching কর্মক্ষমতা সহজ করে তোলে। Java Regex এ *, +, ?, {n}, {n,}, {n,m} এগুলো আপনাকে প্যাটার্নের উপস্থিতি নিয়ন্ত্রণ করতে সাহায্য করে। এগুলোর যথাযথ ব্যবহারের মাধ্যমে আপনি টেক্সট অনুসন্ধান, ভ্যালিডেশন, এবং ম্যানিপুলেশন আরও কার্যকরীভাবে করতে পারবেন।

Content added By
Promotion

Are you sure to start over?

Loading...