মূল কন্টেন্টে যান
মডিউল 7 · 1-এর পাঠ 4কোর্সে 25/32~12 min
মডিউল পাঠ (1/4)

বিস্তারিত সব পতাকা

আধুনিক জাভাস্ক্রিপ্টে উপলব্ধ সমস্ত পতাকা এর সম্পূর্ণ সংক্ষিপ্ত বিবরণ (ES2024)। একটি পতাকা একটি একক অক্ষর যা এর আচরণ পরিবর্তন করে regex; এগুলি যে কোনও ক্রমে একত্রিত করা যেতে পারে।

পতাকানামপ্রভাব
gবিশ্বব্যাপীসমস্ত মিল খুঁজে পায়, শুধু প্রথমটি নয় (matchAll এর জন্য প্রয়োজনীয়)।
iকেস উপেক্ষা করুনকেস-সংবেদনশীল (u/v পতাকা সহ ইউনিকোড অক্ষর সহ)।
mমাল্টিলাইন^ এবং $ একটি লাইন এর শুরু/শেষের সাথে মেলে, শুধু স্ট্রিং নয়।
sডট সব.ও নতুন লাইনের সাথে মেলে \n।
uইউনিকোডকোড পয়েন্টের সঠিক হ্যান্ডলিং > 0xFFFF এবং \\p{...} সক্ষম করে।
vইউনিকোড ভি-মোডসেট অপারেশন সহ u এর আধুনিক এক্সটেনশন ([abc&&[def]])।
yস্টিকিশুধুমাত্র অবস্থান থেকে মেলে lastIndex, কোনো এড়িয়ে যাওয়া যাবে না।
dসূচক আছেফলাফলের মধ্যে রয়েছে indices প্রতিটি গ্রুপের শুরু/শেষ সহ।
JS
const re = /foo/gimu; // global + insensitive + multiline + unicode
re.flags; // "gimu" (always in canonical order: dgimsuvy)

সাধারণ সংমিশ্রণ

  • g + i -- "সবকিছু খুঁজুন, কেস-অসংবেদনশীল"। ব্যবহারিক ব্যবহারের 80%।
  • g + m -- মাল্টিলাইন টেক্সটে লাইন বাই লাইন মেলানোর জন্য।
  • g + s -- "বিন্দুটি নতুন লাইন সহ যেকোনো কিছুর সাথে মিলে যায়"। একাধিক লাইন জুড়ে ব্লক নিষ্কাশন করতে দরকারী।
  • u (বা v) -- সর্বদা আপনি যদি কোনো ভাষা বা ইমোজিতে বাস্তব-বিশ্বের পাঠ্য নিয়ে কাজ করেন।

ইউনিকোড ভি-মোড এবং পতাকা বিবর্তন

v পতাকা (ES2024 এ উপলব্ধ) u কে প্রতিস্থাপন করে এবং সেটগুলিতে উন্নত ক্রিয়াকলাপ সক্ষম করে, যেমন ক্যারেক্টার ক্লাস ইন্টারসেকশন এবং বিয়োগ (যেমন [\\p{White_Space}&&\\p{ASCII}])।

চেষ্টা করে দেখুন

ব্যায়াম#regex.m7.l1.e1
প্রচেষ্টা: 0লোড হচ্ছে...

কেস নির্বিশেষে 'ciao' এর সমস্ত ঘটনা খুঁজুন। সঠিক পতাকা ব্যবহার করুন।

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

g এর পাশে i পতাকা (কেস-সংবেদনশীল) যোগ করুন।

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ

ব্যায়াম পর্যালোচনা করুন

ব্যায়াম#regex.m7.l1.e2
প্রচেষ্টা: 0লোড হচ্ছে...

`<pre>` এবং `</pre>` এর মধ্যে একটি ব্লক খুঁজুন এমনকি যদি এতে নতুন লাইন থাকে। আপনাকে অবশ্যই এমন পতাকা ব্যবহার করতে হবে যা বিন্দুটিকে নতুন লাইনের সাথে মেলে।

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

তাই s পতাকা যোগ করুন. নতুন লাইনের সাথে মিলে যায়, এবং অলস .+ ব্যবহার করে? প্রথমে থামতে </pre>।

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ

অতিরিক্ত চ্যালেঞ্জ

ব্যায়াম#regex.m7.l1.e3
প্রচেষ্টা: 0লোড হচ্ছে...

Match sequences of ASCII characters, explicitly excluding digits, using Unicode v-mode properties (flag `v`) and set subtraction syntax `[\p{ASCII}--\p{Nd}]+`.

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

v পতাকা ব্যবহার করুন এবং সংখ্যাগুলি বাদ দিতে সেট বিয়োগ [\\p{ASCII}--\\p{Nd}]+ লিখুন।

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ