JavaScript এ RegExp প্যাটার্নে কিছু মেটাচারিত্র রয়েছে, যা চরিত্রগুলোর উল্টো (inverse) মিল খুঁজে বের করতে ব্যবহৃত হয়। এই মেটাচারিত্রগুলি মূলত নির্দিষ্ট ক্যাটেগরির বাইরে থাকা চরিত্রগুলোকে মেলাতে ব্যবহৃত হয়। এগুলি হলো \D, \W, এবং \S।
\D: ডিজিটের বাইরের ক্যারেক্টার
\D প্যাটার্নটি ডিজিট (0-9) ছাড়া যেকোনো একটি চরিত্রের সাথে মেলে। এটি \d (ডিজিট) প্যাটার্নের বিপরীত, যা শুধুমাত্র ডিজিটকে মেলে।
সিনট্যাক্স:
let regex = /\D/;
এখানে, \D প্যাটার্নটি যেকোনো ডিজিট ছাড়া একক চরিত্র মেলে। অর্থাৎ, \D এমন কোনো চরিত্রের জন্য কাজ করবে যা ডিজিট নয়।
উদাহরণ:
let regex = /\D/;
let str = "123abc";
console.log(regex.test(str)); // true
এখানে, \D স্ট্রিং "123abc"-এর মধ্যে "a", "b", "c" ইত্যাদি যেকোনো অক্ষরের সাথে মিলবে, কারণ এগুলো ডিজিট নয়।
\W: অক্ষর, সংখ্যা, অথবা আন্ডারস্কোরের বাইরের ক্যারেক্টার
\W প্যাটার্নটি অক্ষর (a-z, A-Z), সংখ্যা (0-9) এবং আন্ডারস্কোর (_) ছাড়া যেকোনো একটি চরিত্রের সাথে মেলে। এটি \w (অক্ষর, সংখ্যা এবং আন্ডারস্কোর) প্যাটার্নের বিপরীত।
সিনট্যাক্স:
let regex = /\W/;
এখানে, \W প্যাটার্নটি এমন কোনো চরিত্র খুঁজে বের করবে যা অক্ষর, সংখ্যা অথবা আন্ডারস্কোরের মধ্যে পড়ে না। এর মধ্যে থাকে পাংকচুয়েশন (যেমন, !, @, #), স্পেস, এবং অন্যান্য বিশেষ চিহ্ন।
উদাহরণ:
let regex = /\W/;
let str = "hello world!";
console.log(regex.test(str)); // true
এখানে, \W স্ট্রিং "hello world!"-এর মধ্যে " " (স্পেস) এবং "!" (বিশেষ চিহ্ন) এর সাথে মিলবে, কারণ এগুলো অক্ষর বা সংখ্যা নয়।
\S: স্পেস ছাড়া অন্য যেকোনো চরিত্র
\S প্যাটার্নটি স্পেস ছাড়া যেকোনো একটি চরিত্রের সাথে মেলে। এটি \s (স্পেস, ট্যাব, নতুন লাইন ইত্যাদি) প্যাটার্নের বিপরীত।
সিনট্যাক্স:
let regex = /\S/;
এখানে, \S প্যাটার্নটি যেকোনো চরিত্রের জন্য কাজ করবে যা স্পেস নয়। এটি অক্ষর, সংখ্যা, বিশেষ চিহ্ন ইত্যাদি সমস্ত কিছু মেলাতে পারে।
উদাহরণ:
let regex = /\S/;
let str = " hello ";
console.log(regex.test(str)); // true
এখানে, \S প্যাটার্নটি স্ট্রিং " hello " এর মধ্যে "h", "e", "l", "l", "o" সহ কোনো স্পেস ছাড়া চরিত্র মেলাবে।
সারাংশ
JavaScript এর RegExp এ \D, \W, এবং \S মেটাচারিত্রগুলো উল্টো প্রভাবিত (inverse) মেলানো প্যাটার্ন। এগুলোর ব্যবহার:
- \D: ডিজিটের বাইরে যেকোনো চরিত্র (অর্থাৎ, 0-9 ছাড়া) মেলে।
- \W: অক্ষর, সংখ্যা এবং আন্ডারস্কোর ছাড়া যেকোনো চরিত্র মেলে।
- \S: স্পেস ছাড়া যেকোনো চরিত্র মেলে।
এগুলি স্ট্রিংয়ের নির্দিষ্ট অংশ খুঁজে বের করতে খুবই কার্যকর এবং সহজে ব্যবহারযোগ্য।
Read more