RegExp সংশোধক পতাকা
ফ্ল্যাগগুলি হল প্যারামিটার যা একটি রেজেক্স পদ্ধতি কীভাবে ব্যবহার করা হয় তা পরিবর্তন করতে পারে, যেমন এটি কেস-অসংবেদনশীল বা গ্লোবাল করা।
/pattern/flags
জাভাস্ক্রিপ্ট রেজেক্স ফ্ল্যাগ
আপডেটের তারিখ:
জুলাই 2025 আপডেট করা হয়েছে
| পতাকা | ব্যাখ্যা |
|---|---|
| /d | সাবস্ট্রিং ম্যাচিং সম্পাদন করে (নতুন 2022) |
| /g | একটি বিশ্বব্যাপী ম্যাচ সম্পাদন করে (সমস্ত খুঁজুন) |
| /i | কেস-সংবেদনশীল ম্যাচিং সঞ্চালন করে |
| /m | একাধিক লাইন ম্যাচিং সম্পাদন করে |
| /s | . (ডট) ফিটিং লাইন টার্মিনেটরকে অনুমতি দেয় (নতুন 2018) |
| /u | ইউনিকোড সমর্থন সক্ষম করে (নতুন 2015) |
| /v | আরও ভাল ইউনিকোড সমর্থনের জন্য /u পতাকা আপডেট করুন (নতুন 2025) |
| /y | একটি "স্টিকি" অনুসন্ধান করে (নতুন 2015) |
ফ্ল্যাগ সিনট্যাক্স: /pattern/flags
/
রেগুলার এক্সপ্রেশনের জন্য খোলা বিভাজক
pattern
নিয়মিত অভিব্যক্তি (একটি অনুসন্ধানের মানদণ্ড)
/
নিয়মিত প্রকাশের জন্য একটি বন্ধ বিভাজক
flags
এক বা একাধিক একক সংশোধক পতাকা
RegExp /g পতাকা (গ্লোবাল)
/g পতাকা পদ্ধতির সমস্ত দৃষ্টান্তের সাথে মেলে, শুধুমাত্র প্রথমটি নয়।
উদাহরণ
একটি স্ট্রিং এ "is" এর জন্য বিশ্বব্যাপী অনুসন্ধান:
let text = "Is this all there is?";
const pattern = /is/g;
let result = text.match(pattern);
RegExp /i পতাকা (অসংবেদনশীল)
/i পতাকা ম্যাচ কেস-সংবেদনশীল করে তোলে: /abc/i "abc", "AbC", "ABC" এর সাথে মেলে।
উদাহরণ
একটি স্ট্রিংয়ে "জাসিফ টিম" এর জন্য একটি কেস-সংবেদনশীল অনুসন্ধান:
let text = "Visit Jassif Team";
const pattern = /jassif team/i;
let result = text.match(pattern);
RegExp /d পতাকা
/d পতাকা একটি ম্যাচের শুরু এবং শেষ নির্দিষ্ট করে।
উদাহরণ
aa বা bb দিয়ে শুরু বা শেষ হওয়া প্রতিটি সাবটেক্সট মেলে:
let text = "aaaabb";
const pattern = /(aa)(bb)/d;
let result = text.match(pattern);
RegExp /s পতাকা (একক লাইন/ডটঅল)
/s পতাকা। (ডট) মেটাক্যারেক্টার অন্যান্য অক্ষর ছাড়াও নতুন লাইনের অক্ষর (\n) মেলানোর অনুমতি দেয়।
উদাহরণ
/s পতাকা ছাড়া, \n। (wildchars) মেলে না:
let text = "Line\nLine.";
const pattern = /Line./gs;
let result = text.match(pattern);
RegExp /y পতাকা (স্টিকি)
/y পতাকা RegExp অবজেক্টের লাস্ট ইনডেক্স বৈশিষ্ট্য থেকে একটি "স্টিকি" অনুসন্ধান করে।
/y পতাকাটি সেই অবস্থানে একটি ম্যাচ শুরু করার অনুমতি দেয় যেখানে শেষ ম্যাচটি শেষ হয়েছিল।
উদাহরণ
let text = "abc def ghi"; const প্যাটার্ন = /\w+/y; // লেভেল 4 থেকে ম্যাচিং শুরু করুন pattern.lastIndex = 4; let result = text.match(pattern);
/y পতাকা একটি অবস্থান থেকে মিলের অনুমতি দিতে সেট করা আবশ্যক।
এটি কাজ করে না:
let text = "abc def ghi"; const প্যাটার্ন = /\w+/; // লেভেল 4 থেকে ম্যাচিং শুরু করুন pattern.lastIndex = 4; let result = text.match(pattern);
দ্রষ্টব্য:
উপরের উদাহরণটি একটি রেজেক্স মেটাক্যারেক্টার /\w+/ ব্যবহার করে।
/\w+/ মানে "যেকোন শব্দের সাথে মিল করুন"।
আপনি পরবর্তী অধ্যায়ে মেটাক্যারেক্টার সম্পর্কে আরও শিখবেন।
RegExp /u পতাকা (ইউনিকোড)
/u পতাকা একটি নিয়মিত অভিব্যক্তিতে সম্পূর্ণ ইউনিকোড সমর্থন সক্ষম করে।
ডিফল্টরূপে, JavaScript RegExp 4-বাইট ইউনিকোড অক্ষর (যেমন ইমোজি বা কম সাধারণ চিহ্ন) দুটি পৃথক 2-বাইট "প্রতিস্থাপন" কোড ইউনিট হিসাবে ব্যবহার করে।
/u পতাকা সিস্টেমটিকে ইউনিকোড কোড পয়েন্টের একটি ক্রম হিসাবে বিবেচনা করে, যা মৌলিক বহুভাষিক সমতল (BMP) এর বাইরে অক্ষরগুলির সঠিক পরিচালনার জন্য গুরুত্বপূর্ণ।
উদাহরণ
let text = "䷀"; const প্যাটার্ন = /\u{04DC0}/u; // সত্য ফেরত: let result = pattern.test(text);
/u পতাকা ছাড়া, নিয়মিত অভিব্যক্তি "ইউনিকোড-সচেতন" নয়।
let text = "䷀"; const প্যাটার্ন = /\u{04DC0}/; // মিথ্যা ফেরত দেয়: let result = pattern.test(text);
দ্রষ্টব্য:
JavaScript 2025 /v পতাকাকে /u পতাকায় একটি "আপগ্রেড" হিসাবে প্রবর্তন করেছে।
/v পতাকাও ইউনিকোড-সম্পর্কিত বৈশিষ্ট্যগুলিকে সক্ষম করে।
RegExp /v পতাকা (ইউনিকোড সেট)
ভাল ইউনিকোড সমর্থনের জন্য /v পতাকা হল /u পতাকায় একটি আপগ্রেড।
এটি ইউনিকোড-সম্পর্কিত বৈশিষ্ট্যগুলিকেও সক্ষম করে।
নতুন বৈশিষ্ট্য:
- \p এস্কেপ সিকোয়েন্স স্ট্রিংয়ের সাথে মেলে, শুধু অক্ষর নয়।
- ছেদ, মিলন এবং বিয়োগ সিনট্যাক্সের পাশাপাশি একাধিক ইউনিকোড অক্ষর মেলানোর জন্য ক্যারেক্টার ক্লাস উন্নত করা হয়েছে।
উদাহরণ
let text = "হ্যালো 😄"; const প্যাটার্ন = /\p{ইমোজি}/v; // সত্য ফেরত: let result = pattern.test(text);
/v পতাকা ছাড়া, নিয়মিত অভিব্যক্তি "ইউনিকোড-সচেতন" নয়।
let text = "হ্যালো 😄"; const প্যাটার্ন = /\p{ইমোজি}/; // মিথ্যা ফেরত দেয়: let result = pattern.test(text);
RegExp গ্রুপ মডিফায়ার (?পতাকা)
(? পতাকা) সিনট্যাক্স একটি ইনলাইন পতাকা পরিবর্তনকারী।
এটি শুধুমাত্র সম্পূর্ণ পদ্ধতির জন্য নয়, পদ্ধতির একটি অংশের জন্যও পতাকা পরিবর্তন করতে দেয়।
(?flags:pattern) শুধুমাত্র গ্রুপের প্যাটার্নের জন্য পতাকা সক্ষম করে।
উদাহরণ
i পতাকা শুধুমাত্র সিস্টেমের Jassif টিম অংশের জন্য সক্রিয় করা হয়েছে।
let text = "জাসিফ টিম টিউটোরিয়াল।"; const প্যাটার্ন = /(?i:Jassif Team) টিউটোরিয়াল/; // সত্য ফেরত: let result = pattern.test(text);
i পতাকা শুধুমাত্র সিস্টেমের Jassif টিম অংশের জন্য সক্রিয় করা হয়েছে।
let text = "জাসিফ টিম টিউটোরিয়াল।"; const প্যাটার্ন = /(?i:Jassif Team) টিউটোরিয়াল/; // মিথ্যা ফেরত দেয়: let result = pattern.test(text);
জাভাস্ক্রিপ্ট রেজেক্স ফ্ল্যাগ বৈশিষ্ট্য
আপডেটের তারিখ:
জুলাই 2025 আপডেট করা হয়েছে
| বৈশিষ্ট্য | ব্যাখ্যা |
|---|---|
| global | /g পতাকা সেট করা থাকলে সত্য ফেরত দেয় |
| hasIndices | /d পতাকা সেট করা থাকলে সত্য ফেরত দেয় |
| ignoreCase | /i পতাকা সেট করা থাকলে সত্য ফেরত দেয় |
| multiline | /m পতাকা সেট করা থাকলে সত্য ফেরত দেয় |
| dotAll | /s পতাকা সেট করা থাকলে সত্য ফেরত দেয় |
| sticky | /y পতাকা সেট করা থাকলে সত্য ফেরত দেয় |
| unicode | /u পতাকা সেট করা থাকলে সত্য ফেরত দেয় |
| unicodeSets | /v পতাকা সেট করা থাকলে সত্য ফেরত দেয় |
ডটঅল অ্যাট্রিবিউট
const pattern = /Jassif Team/s;
let result = pattern.dotAll;
বৈশ্বিক বৈশিষ্ট্য
const pattern = /Jassif Team/g;
let result = pattern.global;
hasIndices বৈশিষ্ট্য
const pattern = /Jassif Team/d;
let result = pattern.hasIndices;
ignoreCase অ্যাট্রিবিউট
const pattern = /Jassif Team/i;
let result = pattern.ignoreCase;
অভিব্যক্তির প্রচলিত মোড
নিয়মিত এক্সপ্রেশন অনুসন্ধান এবং প্রতিস্থাপন বিভিন্ন পদ্ধতির সাহায্যে করা যেতে পারে।
এগুলি সবচেয়ে সাধারণ:
স্ট্রিং পদ্ধতি
| পদ্ধতি | ব্যাখ্যা |
|---|---|
| match(regex) | ফলাফলের একটি বিন্যাস প্রদান করে |
| matchAll(regex) | ফলাফলের সংক্ষিপ্ত বিবরণ প্রদান করে |
| replace(regex) | একটি নতুন স্ট্রিং প্রদান করে |
| replaceAll(regex) | একটি নতুন স্ট্রিং প্রদান করে |
| search(regex) | প্রথম ম্যাচের সূচী প্রদান করে |
| split(regex) | ফলাফলের একটি বিন্যাস প্রদান করে |
RegExp পদ্ধতি
| পদ্ধতি | ব্যাখ্যা |
|---|---|
| regex.exec() | ফলাফলের সংক্ষিপ্ত বিবরণ প্রদান করে |
| regex.test() | সত্য বা মিথ্যা ফেরত দেয় |
জসিফ টিম নোট:
আরও জানুন:
- জাভাস্ক্রিপ্ট RegExp টিউটোরিয়াল
- JavaScript RegExp ক্যারেক্টার ক্লাস
- JavaScript RegExp মেটাক্যারেক্টার
- জাভাস্ক্রিপ্ট RegExp দাবী
- জাভাস্ক্রিপ্ট RegExp মেট্রিক্স
- জাভাস্ক্রিপ্ট RegExp পদ্ধতি