RegExp এ Character Sets এবং Ranges ব্যবহার করে আমরা নির্দিষ্ট এক বা একাধিক চরিত্রের সাথে স্ট্রিং মিলাতে পারি। এই সেট ও রেঞ্জগুলো RegExp প্যাটার্নের মধ্যে নির্দিষ্ট চরিত্রের গোষ্ঠী বা সীমা সংজ্ঞায়িত করতে সাহায্য করে।
Character Set
Character Set (অথবা চরিত্র সেট) একটি ধরনের প্যাটার্ন যা কোনো নির্দিষ্ট গ্রুপের অক্ষর বা চিহ্নের মধ্যে মেলানোর জন্য ব্যবহৃত হয়। একটি character set [ ] চিহ্নের মধ্যে লেখা হয়। এর মধ্যে দেওয়া সব চরিত্রের মধ্যে যেকোনো একটিকে ম্যাচ করতে RegExp কাজ করে।
সিনট্যাক্স:
/[abc]/;
এখানে, [abc] প্যাটার্নটি স্ট্রিংয়ের মধ্যে "a", "b", অথবা "c" যেকোনো একটি চরিত্র খুঁজবে।
উদাহরণ:
let regex = /[abc]/;
let str = "apple";
console.log(regex.test(str)); // true
এখানে, RegExp [abc] প্যাটার্নটি "apple" শব্দের মধ্যে "a" অক্ষরের সাথে মিলে গেছে, তাই true রিটার্ন হয়েছে।
Character Ranges
Character Ranges ব্যবহারের মাধ্যমে একটি নির্দিষ্ট পরিসরের মধ্যে থাকা কোনো অক্ষরকে ম্যাচ করা যায়। এটি সাধারণত - চিহ্ন ব্যবহার করে করা হয়, যা দুটি চরিত্রের মধ্যে থাকা সমস্ত চরিত্রকে সংজ্ঞায়িত করে।
সিনট্যাক্স:
[a-z] // ছোট হাতের অক্ষরের জন্য
[A-Z] // বড় হাতের অক্ষরের জন্য
[0-9] // সংখ্যা (0 থেকে 9)
উদাহরণ:
let regex = /[a-z]/;
let str = "apple";
console.log(regex.test(str)); // true
এখানে, [a-z] প্যাটার্নটি স্ট্রিং "apple" এর মধ্যে ছোট হাতের অক্ষরের সাথে মিলে গেছে, তাই true রিটার্ন হয়েছে।
বিভিন্ন রেঞ্জের ব্যবহার
ছোট হাতের অক্ষর (a-z):
let regex = /[a-z]/; let str = "apple"; console.log(regex.test(str)); // trueবড় হাতের অক্ষর (A-Z):
let regex = /[A-Z]/; let str = "Apple"; console.log(regex.test(str)); // trueসংখ্যা (0-9):
let regex = /[0-9]/; let str = "apple123"; console.log(regex.test(str)); // trueবড় হাতের এবং ছোট হাতের অক্ষর এবং সংখ্যা:
let regex = /[A-Za-z0-9]/; let str = "apple123"; console.log(regex.test(str)); // true
এখানে, [A-Za-z0-9] প্যাটার্নটি স্ট্রিংয়ের মধ্যে বড় হাতের অক্ষর, ছোট হাতের অক্ষর এবং সংখ্যা যেকোনো একটি খুঁজবে।
Negation (বিরোধী চরিত্র সেট)
Negation ব্যবহারের মাধ্যমে আপনি একটি character set এর মধ্যে যেসব চরিত্র অন্তর্ভুক্ত নয়, সেগুলোর সাথে মেলাতে পারেন। এটি ^ চিহ্ন দিয়ে করা হয়, যা character set এর শুরুতে বসানো হয়।
সিনট্যাক্স:
/[^abc]/ // 'a', 'b', 'c' ছাড়া যেকোনো একটি চরিত্র
উদাহরণ:
let regex = /[^abc]/;
let str = "apple";
console.log(regex.test(str)); // true
এখানে, [^abc] প্যাটার্নটি "apple" শব্দের মধ্যে "a", "b", বা "c" ছাড়া যেকোনো একটি চরিত্র খুঁজবে, এবং "p" এর জন্য মিল হবে।
সারাংশ
RegExp এর Character Sets এবং Ranges ব্যবহার করে আমরা স্ট্রিংয়ের মধ্যে নির্দিষ্ট চরিত্র বা চরিত্রের পরিসরের সাথে মেলাতে পারি। Character sets [ ] এর মধ্যে দেওয়া একটি গোষ্ঠী থেকে যেকোনো একটি চরিত্র খুঁজে পায়, এবং রেঞ্জ ব্যবহার করে কোনো নির্দিষ্ট পরিসরের মধ্যে থাকা চরিত্রগুলোর সাথে মেলানো হয়। এগুলো স্ট্রিংয়ের নির্দিষ্ট অংশ খুঁজে বের করতে বা যাচাই করতে সাহায্য করে।
JavaScript এর RegExp এ Character Set বা ক্যারেক্টার সেট ব্যবহৃত হয় একটি প্যাটার্নের মধ্যে নির্দিষ্ট কিছু চরিত্র খুঁজে বের করার জন্য। এই সেটটি [] (ব্র্যাকেট) চিহ্নের মধ্যে রাখা হয়, যার মাধ্যমে আপনি একটি নির্দিষ্ট ক্যারেক্টারের মধ্যে থেকে যেকোনো একটি চরিত্রের সাথে মেলানোর নিয়ম তৈরি করতে পারেন।
ক্যারেক্টার সেটের কাজ
ক্যারেক্টার সেটে একাধিক চরিত্র বা সংখ্যা দেওয়া থাকে, এবং RegExp সেই চরিত্রগুলোর মধ্যে যেকোনো একটি মেলানোর চেষ্টা করবে। এটি সাধারণত অক্ষরের একটি সেটকে নির্দেশ করে, যার মধ্যে যে কোন একটি চরিত্র মেলে।
ক্যারেক্টার সেটের ব্যবহার
সিনট্যাক্স:
let regex = /[characters]/;
এখানে, [characters] প্যাটার্নটি সেই চরিত্রগুলির মধ্যে যেকোনো একটি মেলানোর চেষ্টা করবে।
উদাহরণ
১. একটি নির্দিষ্ট সেটের অক্ষর খোঁজা
যদি আপনি "hello" শব্দে কোনো একটি vowel (a, e, i, o, u) খুঁজতে চান, তবে আপনি নিচের মতো ক্যারেক্টার সেট ব্যবহার করতে পারেন:
let regex = /[aeiou]/;
let str = "hello";
console.log(regex.test(str)); // true
এখানে, [aeiou] প্যাটার্নটি "hello" স্ট্রিংয়ের মধ্যে একটি vowel (a, e, i, o, u) খুঁজে পায়, এবং ফলস্বরূপ true রিটার্ন হবে।
২. একাধিক অক্ষরের মধ্যে মিল খোঁজা
আপনি একটি ক্যারেক্টার সেটে একাধিক অক্ষর রাখতে পারেন, যেমন:
let regex = /[abc]/;
let str = "apple";
console.log(regex.test(str)); // true
এখানে, [abc] প্যাটার্নটি "apple" স্ট্রিংয়ের মধ্যে "a" খুঁজে পায় এবং true রিটার্ন হবে।
৩. নির্দিষ্ট অক্ষর ব্যতীত কিছু খোঁজা
ক্যারেক্টার সেটের বিপরীতে কিছু খুঁজতে চাইলে আপনি ^ চিহ্নটি ব্যবহার করতে পারেন, যা ওই সেটের বাইরে থাকা চরিত্রগুলোর সাথে মেলে। উদাহরণস্বরূপ:
let regex = /[^aeiou]/;
let str = "hello";
console.log(regex.test(str)); // true
এখানে, [^aeiou] প্যাটার্নটি "hello" স্ট্রিংয়ের মধ্যে কোনো একটি অক্ষর খুঁজে পাবে, যা ভ্যাওয়েল নয়, যেমন "h" বা "l"।
ক্যারেক্টার সেটের আরো উদাহরণ
১. সংখ্যার মধ্যে কোনো একটি সংখ্যা খোঁজা
let regex = /[0-9]/;
let str = "abc123";
console.log(regex.test(str)); // true
এখানে, [0-9] প্যাটার্নটি "abc123" স্ট্রিংয়ের মধ্যে সংখ্যা খুঁজে পায়।
২. বিশেষ অক্ষরের মধ্যে খোঁজা
let regex = /[!@#]/;
let str = "hello@world";
console.log(regex.test(str)); // true
এখানে, [!@#] প্যাটার্নটি "hello@world" স্ট্রিংয়ের মধ্যে @ বিশেষ চিহ্নটি খুঁজে পায়।
সারাংশ
Character Set বা ক্যারেক্টার সেট একটি RegExp প্যাটার্নের অংশ হিসেবে ব্যবহৃত হয়, যেখানে আপনি একটি নির্দিষ্ট চরিত্রের মধ্যে যেকোনো একটি খুঁজে বের করার নিয়ম তৈরি করতে পারেন। এই সেটটি [] চিহ্নের মধ্যে রাখা হয় এবং এর মধ্যে একাধিক চরিত্র বা সংখ্যা থাকতে পারে, যা মিলানো যায়। RegExp এর সাহায্যে আপনি সহজেই স্ট্রিংয়ের মধ্যে বিভিন্ন ধরনের চরিত্র খুঁজে বের করতে পারেন।
RegExp এ ranges ব্যবহার করে আপনি নির্দিষ্ট ক্যারেক্টার গ্রুপের মধ্যে থাকা যেকোনো একটি চরিত্র মেলাতে পারেন। এটি বেশ কার্যকর যখন আপনি চান যে প্যাটার্নটি একটি নির্দিষ্ট অক্ষরের একটি সঠিক পরিসরের মধ্যে মেলাক। উদাহরণস্বরূপ, যদি আপনি চান যে একটি চরিত্র ছোট হাতের অক্ষর (lowercase letters) বা সংখ্যা (digits) এর মধ্যে থেকে যেকোনো একটি মিলুক, তাহলে আপনি ranges ব্যবহার করতে পারেন।
ক্যারেক্টার রেঞ্জ (Character Range)
ক্যারেক্টার রেঞ্জ লিখতে, আপনি [] ব্র্যাকেট ব্যবহার করবেন এবং এর মধ্যে একটি নির্দিষ্ট পরিসীমা উল্লেখ করবেন। যেমন:
[a-z]: সব ছোট হাতের অক্ষর[A-Z]: সব বড় হাতের অক্ষর[0-9]: সব ডিজিট (০ থেকে ৯)
উদাহরণ
১. ছোট হাতের অক্ষর (a-z)
[a-z] প্যাটার্নটি সমস্ত ছোট হাতের অক্ষরের মধ্যে যেকোনো একটি অক্ষরের সাথে মেলে।
উদাহরণ:
let regex = /[a-z]/;
let str = "hello";
console.log(regex.test(str)); // true
এখানে, [a-z] প্যাটার্নটি "hello" স্ট্রিংয়ের প্রথম অক্ষর "h"-এর সাথে মেলে কারণ এটি ছোট হাতের অক্ষর।
২. বড় হাতের অক্ষর (A-Z)
[A-Z] প্যাটার্নটি সমস্ত বড় হাতের অক্ষরের মধ্যে যেকোনো একটি অক্ষরের সাথে মেলে।
উদাহরণ:
let regex = /[A-Z]/;
let str = "Hello";
console.log(regex.test(str)); // true
এখানে, [A-Z] প্যাটার্নটি "Hello" স্ট্রিংয়ের প্রথম অক্ষর "H"-এর সাথে মেলে কারণ এটি একটি বড় হাতের অক্ষর।
৩. ডিজিট (0-9)
[0-9] প্যাটার্নটি সমস্ত ডিজিটের মধ্যে যেকোনো একটি সংখ্যার সাথে মেলে।
উদাহরণ:
let regex = /[0-9]/;
let str = "abc123";
console.log(regex.test(str)); // true
এখানে, [0-9] প্যাটার্নটি "abc123" স্ট্রিংয়ের মধ্যে সংখ্যার মধ্যে একটি (যেমন "1") মেলাচ্ছে।
মিশ্র রেঞ্জ
আপনি একাধিক রেঞ্জ একত্রে ব্যবহার করতে পারেন যাতে একাধিক ধরনের ক্যারেক্টার একসাথে মেলে। যেমন, আপনি যদি চান যে প্যাটার্নটি ছোট হাতের অক্ষর বা ডিজিটের মধ্যে যেকোনো একটি মিলুক, তাহলে আপনি [a-z0-9] ব্যবহার করতে পারেন।
উদাহরণ:
let regex = /[a-z0-9]/;
let str = "abc123";
console.log(regex.test(str)); // true
এখানে, [a-z0-9] প্যাটার্নটি "abc123" স্ট্রিংয়ের মধ্যে ছোট হাতের অক্ষর বা সংখ্যা যেকোনো একটি মিলাচ্ছে।
রেঞ্জের বিপরীত
কখনও কখনও আপনি রেঞ্জের বিপরীত (opposite) চাইতে পারেন। যেমন, যদি আপনি চান যে প্যাটার্নটি শুধুমাত্র ছোট হাতের অক্ষর নয় এমন চরিত্রগুলোর সাথে মেলুক, তখন [^a-z] ব্যবহার করা হয়। এটি সমস্ত ছোট হাতের অক্ষরের বাইরে থাকা চরিত্রগুলো মেলে।
উদাহরণ:
let regex = /[^a-z]/;
let str = "hello123";
console.log(regex.test(str)); // true
এখানে, [^a-z] প্যাটার্নটি "hello123" স্ট্রিংয়ের মধ্যে ছোট হাতের অক্ষরের বাইরে থাকা চরিত্রগুলোর (যেমন সংখ্যা "1", "2", "3") সাথে মেলে।
রেঞ্জের বিশেষ চরিত্র
কিছু নির্দিষ্ট ধরনের রেঞ্জের জন্য আপনি RegExp-এ বিশেষ সিম্বল ব্যবহার করতে পারেন:
\d: ডিজিটের জন্য (যেমন[0-9]এর মতো)\w: শব্দের জন্য (আলফানিউমেরিক চরিত্র এবং আন্ডারস্কোর)\s: স্পেস বা সাদা জায়গার জন্য
উদাহরণ:
let regex = /\d/;
let str = "abc123";
console.log(regex.test(str)); // true
এখানে, \d প্যাটার্নটি "abc123" স্ট্রিংয়ের মধ্যে ডিজিট "1" এর সাথে মেলে।
সারাংশ
RegExp এ ranges ব্যবহার করে আপনি নির্দিষ্ট পরিসীমার মধ্যে থাকা যেকোনো একটি চরিত্র মেলাতে পারেন। যেমন, [a-z] ছোট হাতের অক্ষর, [A-Z] বড় হাতের অক্ষর, [0-9] ডিজিটের জন্য ব্যবহৃত হয়। আপনি এই ranges একত্রে ব্যবহার করে শক্তিশালী প্যাটার্ন তৈরি করতে পারেন এবং [^] দিয়ে বিপরীত রেঞ্জও ব্যবহার করতে পারেন। RegExp এর এই ফিচারটি স্ট্রিংয়ের নির্দিষ্ট অংশ খুঁজে বের করতে অত্যন্ত কার্যকর।
JavaScript এর RegExp এ Negated Character Set বা বিপরীত ক্যারেক্টার সেট ([^]) ব্যবহার করা হয় একটি নির্দিষ্ট ক্যারেক্টার ক্লাসের বাইরে থাকা যেকোনো একক চরিত্রের সাথে মেলানোর জন্য। এটি ক্যারেক্টার ক্লাসের মধ্যে যেসব অক্ষর নেই, সেগুলোর সাথে মেলে।
[^] এর কাজ
Negated Character Set ([^]) স্ট্রিংয়ের এমন চরিত্র খুঁজে বের করতে ব্যবহৃত হয় যেগুলি একটি নির্দিষ্ট সেটের অংশ নয়। এর মাধ্যমে আপনি একটি বা একাধিক বিশেষ চরিত্রের সাথে মেলাতে পারবেন, কিন্তু সেই নির্দিষ্ট সেটে থাকা চরিত্রগুলির সাথে নয়।
এটি খুবই উপকারী যখন আপনি কোনো স্ট্রিংয়ের মধ্যে যেসব চরিত্রের মধ্যে একটি নির্দিষ্ট চরিত্র নেই সেগুলোর সাথে মেলাতে চান।
উদাহরণ
ধরা যাক, আমরা একটি প্যাটার্ন তৈরি করতে চাই যাতে শুধু vowel (a, e, i, o, u) বাদে অন্যান্য সব ক্যারেক্টারকে পাওয়া যায়। এই ক্ষেত্রে, আমরা [^aeiou] প্যাটার্ন ব্যবহার করতে পারি।
let regex = /[^aeiou]/;
let str = "hello";
console.log(regex.test(str)); // true
এখানে, [^aeiou] প্যাটার্নটি "hello" স্ট্রিংয়ের মধ্যে এমন চরিত্র খুঁজে পাবে যা vowel নয়। "h", "l" এবং "o" এর মধ্যে "h" এবং "l" মেলানো হবে, কারণ এগুলি vowel নয়।
আরও উদাহরণ
ধরা যাক, আমরা একটি প্যাটার্ন তৈরি করতে চাই যাতে সংখ্যা ছাড়া অন্য সব অক্ষর মেলাতে হবে। আমরা [^0-9] প্যাটার্ন ব্যবহার করতে পারি।
let regex = /[^0-9]/;
let str = "abc123";
console.log(regex.test(str)); // true
এখানে, [^0-9] প্যাটার্নটি "abc123" স্ট্রিংয়ের মধ্যে এমন অক্ষর খুঁজে পাবে যা সংখ্যা নয়। "a", "b", "c" চরিত্রগুলির সাথে এটি মেলবে।
[^] এর সঙ্গে অন্যান্য প্যাটার্নের সংমিশ্রণ
আপনি Negated Character Set ([^]) ব্যবহার করে আরও জটিল প্যাটার্ন তৈরি করতে পারেন। উদাহরণস্বরূপ, আপনি একটি প্যাটার্ন তৈরি করতে পারেন যা শুধু অক্ষর বাদে অন্য যেকোনো কিছু খুঁজে পাবে।
let regex = /[^a-zA-Z]/;
let str = "hello123";
console.log(regex.test(str)); // true
এখানে, [^a-zA-Z] প্যাটার্নটি স্ট্রিংয়ের মধ্যে এমন কিছু খুঁজে পাবে যা অক্ষর নয়, অর্থাৎ সংখ্যার সাথে মেলবে।
সারাংশ
Negated Character Set ([^]) RegExp-এ ব্যবহৃত হয় একটি নির্দিষ্ট ক্যারেক্টার ক্লাসের বাইরে থাকা যেকোনো চরিত্র খুঁজে বের করতে। এটি খুবই উপকারী যখন আপনি কোনো ক্যারেক্টার ক্লাসের বাইরে থাকা চরিত্রগুলোর সাথে মেলাতে চান। [^] প্যাটার্ন ব্যবহার করে আপনি যেকোনো অক্ষর বা চরিত্রের বিপরীত কাজ করতে পারেন, যেমন কোনো নির্দিষ্ট অক্ষর বাদ দিয়ে অন্য যেকোনো কিছু মেলা।
RegExp এ Predefined Character Classes এমন কিছু বিশেষ চরিত্রের শ্রেণী যা সরাসরি কিছু সাধারণ প্যাটার্ন মেলাতে ব্যবহৃত হয়। এগুলো হলো পূর্বনির্ধারিত চরিত্রের গোষ্ঠী, যা আপনাকে বিভিন্ন ধরনের স্ট্রিং বা চরিত্র দ্রুত এবং সহজে মেলানোর সুবিধা প্রদান করে। এ ধরনের চরিত্র ক্লাসগুলো মূলত ছোট বা সাধারণ প্যাটার্নের জন্য ব্যবহৃত হয়।
\d: যেকোনো ডিজিট (0-9)
\d মেটাচরিত্রটি যেকোনো ডিজিট (0-9) মেলাতে ব্যবহৃত হয়। এটি শুধুমাত্র সংখ্যাগুলি ম্যাচ করবে এবং অন্য কোনো চরিত্র যেমন অক্ষর বা স্পেস মেলাবে না।
উদাহরণ:
let regex = /\d/;
let str = "123abc";
console.log(regex.test(str)); // true
এখানে, \d স্ট্রিং "123abc"-এর মধ্যে প্রথম ডিজিট (1) কে ম্যাচ করছে।
\D: যেকোনো নন-ডিজিট
\D মেটাচরিত্রটি যেকোনো নন-ডিজিট (অর্থাৎ, 0-9 ছাড়া অন্যান্য ক্যারেক্টার) মেলাতে ব্যবহৃত হয়। এটি সংখ্যাগুলির বাইরে থাকা অন্য সব ধরনের ক্যারেক্টারের সাথে মিলে যাবে।
উদাহরণ:
let regex = /\D/;
let str = "123abc";
console.log(regex.test(str)); // true
এখানে, \D স্ট্রিং "123abc"-এর মধ্যে প্রথম অ-সংখ্যা (a) কে ম্যাচ করছে।
\w: যেকোনো ওয়ার্ড ক্যারেক্টার (অক্ষর, সংখ্যা বা আন্ডারস্কোর)
\w মেটাচরিত্রটি যেকোনো অক্ষর, সংখ্যা বা আন্ডারস্কোর (_) মেলাতে ব্যবহৃত হয়। এটি A-Z, a-z, 0-9 এবং _ (আন্ডারস্কোর) এর মধ্যে যেকোনো একটি ক্যারেক্টারের সাথে মিলে যাবে।
উদাহরণ:
let regex = /\w/;
let str = "Hello_123";
console.log(regex.test(str)); // true
এখানে, \w স্ট্রিং "Hello_123"-এর মধ্যে প্রথম ওয়ার্ড ক্যারেক্টার (H) কে ম্যাচ করছে।
\W: যেকোনো নন-ওয়ার্ড ক্যারেক্টার
\W মেটাচরিত্রটি নন-ওয়ার্ড ক্যারেক্টার (অর্থাৎ, অক্ষর, সংখ্যা বা আন্ডারস্কোর ছাড়া অন্য যেকোনো ক্যারেক্টার) মেলাতে ব্যবহৃত হয়। এটি স্পেস, পাংকচুয়েশন চিহ্ন বা অন্য কোনো বিশেষ চিহ্নের সাথে মেলে।
উদাহরণ:
let regex = /\W/;
let str = "Hello! 123";
console.log(regex.test(str)); // true
এখানে, \W স্ট্রিং "Hello! 123"-এর মধ্যে "!" চিহ্নটি মেলাচ্ছে।
\s: যেকোনো হোয়াইট স্পেস ক্যারেক্টার
\s মেটাচরিত্রটি যেকোনো স্পেস, ট্যাব, নিউ লাইন বা ক্যারেজ রিটার্ন মেলাতে ব্যবহৃত হয়। এটি স্ট্রিংয়ের মধ্যে যে কোনো সাদা জায়গা (whitespace) খুঁজে বের করবে।
উদাহরণ:
let regex = /\s/;
let str = "Hello world";
console.log(regex.test(str)); // true
এখানে, \s স্ট্রিং "Hello world"-এর মধ্যে স্পেস ক্যারেক্টার (এখানে ) মেলাচ্ছে।
\S: যেকোনো নন-হোয়াইট স্পেস ক্যারেক্টার
\S মেটাচরিত্রটি নন-হোয়াইট স্পেস ক্যারেক্টার মেলাতে ব্যবহৃত হয়। এটি স্ট্রিংয়ের মধ্যে স্পেসের বাইরে থাকা যে কোনো ক্যারেক্টার মেলাবে।
উদাহরণ:
let regex = /\S/;
let str = " hello";
console.log(regex.test(str)); // true
এখানে, \S স্ট্রিং " hello"-এর মধ্যে প্রথম নন-স্পেস ক্যারেক্টার (h) কে ম্যাচ করছে।
\b: শব্দের সীমানা
\b মেটাচরিত্রটি শব্দের সীমানা (word boundary) নির্দেশ করতে ব্যবহৃত হয়। এটি শব্দের শুরু বা শেষের অবস্থানে ম্যাচ করবে, যেমন একক শব্দের মধ্যে স্পেস অথবা অন্য কোনো সীমানা।
উদাহরণ:
let regex = /\bworld\b/;
let str = "hello world";
console.log(regex.test(str)); // true
এখানে, \b "world" শব্দের সীমানা নির্দেশ করছে এবং এটি স্ট্রিং "hello world"-এ মিল খুঁজে পাচ্ছে।
\B: নন-শব্দের সীমানা
\B মেটাচরিত্রটি নন-শব্দের সীমানা (non-word boundary) নির্দেশ করতে ব্যবহৃত হয়। এটি এমন অবস্থানে ম্যাচ করবে যেখানে শব্দের সীমানা নেই।
উদাহরণ:
let regex = /world\B/;
let str = "helloworld";
console.log(regex.test(str)); // true
এখানে, \B "world" শব্দের শেষে কোনো সীমানা না থাকায় এটি স্ট্রিং "helloworld"-এ মিল খুঁজে পাচ্ছে।
সারাংশ
RegExp এর Predefined Character Classes আপনাকে কিছু সাধারণ চরিত্রের গোষ্ঠী সহজে মেলাতে সাহায্য করে। এগুলো হলো:
\d: ডিজিট (0-9)।\D: নন-ডিজিট (অর্থাৎ, 0-9 ছাড়া অন্যান্য চরিত্র)।\w: অক্ষর, সংখ্যা, বা আন্ডারস্কোর (_)\W: নন-ওয়ার্ড ক্যারেক্টার (অক্ষর, সংখ্যা বা আন্ডারস্কোর ছাড়া)।\s: হোয়াইট স্পেস (স্পেস, ট্যাব, নিউ লাইন ইত্যাদি)।\S: নন-হোয়াইট স্পেস ক্যারেক্টার।\b: শব্দের সীমানা।\B: নন-শব্দের সীমানা।
এগুলো আপনাকে প্যাটার্ন মেলানোর কাজকে আরও সহজ এবং কার্যকরী করে তোলে।
Read more