কম্পিউটার টিউটোরিয়াল

C#-তে রেগুলার এক্সপ্রেশনে গ্রুপিং কনস্ট্রাক্ট (Grouping Constructs) ব্যাখ্যা

রেগুলার এক্সপ্রেশন সংজ্ঞায়িত করার জন্য ক্যারেক্টার, অপারেটর এবং কনস্ট্রাক্টের বিভিন্ন ক্যাটাগরি রয়েছে। 그중 একটি হলো গ্রুপিং কনস্ট্রাক্ট (Grouping Constructs)। গ্রুপিং কনস্ট্রাক্ট রেগুলার এক্সপ্রেশনের সাব-এক্সপ্রেশন (sub-expressions) বর্ণনা করে এবং ইনপুট স্ট্রিংয়ের সাবস্ট্রিং ক্যাপচার (capture) করে। নিচের টেবিলে গ্রুপিং কনস্ট্রাক্টগুলো দেওয়া হলো:

Grouping construct বিবরণ Pattern Matches
( subexpression ) ম্যাচ করা সাব-এক্সপ্রেশন ক্যাপচার করে এবং জিরো-বেসড অর্ডিনাল নম্বর অ্যাসাইন করে। (\w)\1 "ee" in "deep"
(?<name>subexpression) ম্যাচ করা সাব-এক্সপ্রেশন একটি নামযুক্ত গ্রুপে (named group) ক্যাপচার করে। (?<double>\w)\k<double> "ee" in "deep"
(?<name1-name2>subexpression) একই ভ্যালেন্স গ্রুপ ডেফিনিশন (balancing group definition) সংজ্ঞায়িত করে। (((?'Open'\()[^\(\)]*)+((?'Close-Open'\))[^\(\)]*)+)*(?(Open)(?!))$ "((1-3)*(3-1))" in "3+2^((1-3)*(3-1))"
(?: subexpression) একটি নন-ক্যাপচারিং গ্রুপ (noncapturing group) সংজ্ঞায়িত করে। Write(?:Line)? "WriteLine" in "Console.WriteLine()"
(?imnsx-imnsx:subexpression) subexpression এর ভেতরে নির্দিষ্ট অপশনগুলো অ্যাপ্লাই বা ডিজেবল করে। A\d{2}(?i:\w+)\b "A12xl", "A12XL" in "A12xl A12XL a12xl"
(?= subexpression) জিরো-উইড পজিটিভ লুকঅহেড অ্যাসারশন (Zero-width positive lookahead assertion)। \w+(?=\.) "is", "ran", and "out" in "He is. The dog ran. The sun is out."
(?! subexpression) জিরো-উইড 네가টিভ লুকঅহেড অ্যাসারশন (Zero-width negative lookahead assertion)। \b(?!un)\w+\b "sure", "used" in "unsure sure unity used"
(?<=subexpression) জিরো-উইড পজিটিভ লুকবিহাইন্ড অ্যাসারশন (Zero-width positive lookbehind assertion)। (?<=19)\d{2}\b "51", "03" in "1851 1999 1950 1905 2003"
(?<!subexpression) জিরো-উইড 네가টিভ লুকবিহাইন্ড অ্যাসারশন (Zero-width negative lookbehind assertion)। (?<!19)\d{2}\b "ends", "ender" in "end sends endure lender"
(?>subexpression) নন-ব্যাকট্র্যাকিং (nonbacktracking বা "greedy") সাব-এক্সপ্রেশন। [13579](?>A+B+) "1ABB", "3ABB", and "5AB" in "1ABB 3ABBC 5AB 5AC"
  1. জাভাস্ক্রিপ্ট রেগুলার এক্সপ্রেশন মডিফায়ার উদাহরণসহ ব্যাখ্যা

  2. জাভাস্ক্রিপ্টে গ্রুপিং অপারেটর ব্যাখ্যা

  3. পাইথন রেগুলার এক্সপ্রেশন সিন্ট্যাক্স সহজে ব্যাখ্যা করবেন?

  4. পাইথন রেগুলার এক্সপ্রেশনে গ্রুপিং (Grouping) এর কাজ