এই অধ্যায়ে শিখবো Regular Expressions (Regex) কী, JavaScript এ Regex কিভাবে ব্যবহার করা হয়, এবং কীভাবে টেক্সট pattern matching বা খোঁজা যায়।
১. Regular Expression (Regex) কী?
-
Regex হলো এমন একটি প্যাটার্ন বা নিদর্শন যা দিয়ে টেক্সটের মধ্যে নির্দিষ্ট ধরণের অক্ষর বা শব্দ খোঁজা বা মিলানো যায়।
-
খুবই শক্তিশালী টুল, যেমন: ইমেইল ভ্যালিডেশন, ফোন নাম্বার চেক, স্পেসিফিক শব্দ খোঁজা ইত্যাদি।
২. JavaScript এ Regex তৈরি করার দুই উপায়
১) Literals ব্যবহার করে
let pattern = /abc/;
২) RegExp কন্সট্রাক্টর দিয়ে
let pattern = new RegExp('abc');
৩. Regex ফ্ল্যাগ
| ফ্ল্যাগ | অর্থ |
|---|---|
| g | গ্লোবাল সার্চ (সব জায়গায় খোঁজা) |
| i | ক্যাস-ইনসেন্সিটিভ (বড় ছোট অক্ষর পার্থক্য না নেয়) |
| m | মাল্টিলাইন মোড |
৪. সাধারণ মেটা ক্যারেক্টার
| প্যাটার্ন | অর্থ |
|---|---|
. |
যেকোনো এক অক্ষর (নিউলাইন ব্যতীত) |
\d |
ডিজিট (০-৯) |
\w |
অক্ষর বা সংখ্যা বা আন্ডারস্কোর |
\s |
স্পেস বা whitespace |
^ |
স্ট্রিংয়ের শুরু |
$ |
স্ট্রিংয়ের শেষ |
* |
শূন্য বা একাধিক বার |
+ |
এক বা একাধিক বার |
? |
শূন্য বা এক বার |
{n} |
ঠিক n বার |
[abc] |
a বা b বা c |
[^abc] |
a, b, c ছাড়া যেকোনো |
৫. উদাহরণ: সহজ ম্যাচিং
let text = "Hello 123!";
let pattern = /\d+/g; // এক বা একাধিক ডিজিট খোঁজো
let result = text.match(pattern);
console.log(result); // ["123"]
৬. ইমেইল ভ্যালিডেশন (সাধারণ)
let email = "test@example.com";
let emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
console.log(emailPattern.test(email)); // true বা false
৭. String এর সাথে Regex ব্যবহার
-
test()— প্যাটার্ন মিললে true, না হলে false দেয়। -
match()— মিলে যেসব অংশ পাওয়া গেছে, সেগুলো অ্যারে হিসেবে দেয়। -
replace()— মিলে যেসব অংশ, সেগুলো বদলে দেয়।
let str = "apple, banana, cherry";
console.log(/banana/.test(str)); // true
console.log(str.match(/a\w+/g)); // ["apple", "banana"]
console.log(str.replace(/banana/, "orange")); // apple, orange, cherry
৮. Regex এস্কেপিং
-
বিশেষ ক্যারেক্টার গুলো যদি টেক্সট হিসেবে খোঁজতে চাই, তাহলে ব্যাকস্ল্যাশ দিয়ে এস্কেপ করতে হয়:
let dotPattern = /\./; // ডট (.) খোঁজা
console.log(dotPattern.test("example.com")); // true
৯. Regex টুলস ব্যবহার
-
অনলাইন অনেক টুল আছে যেমন: regex101.com
-
প্যাটার্ন পরীক্ষা ও বুঝতে সাহায্য করে।
এই অধ্যায়ের শেষে আপনি শিখলেন:
-
Regex কি এবং কেন দরকার
-
JS এ Regex কিভাবে তৈরি ও ব্যবহার হয়
-
মেটা ক্যারেক্টার ও ফ্ল্যাগ
-
সাধারণ প্যাটার্নের উদাহরণ
-
ইমেইল ভ্যালিডেশন করার পদ্ধতি
পরবর্তী অধ্যায়:
অধ্যায় ৩৩: JavaScript Local Storage ও Session Storage
লিখুন: “অধ্যায় ৩৩ শুরু করো” — তাহলে শিখবো ব্রাউজারে ডেটা সংরক্ষণের পদ্ধতি।
