যে কোনো স্ট্রিংয়ের বিভিন্ন ইলিমেন্টের উপর কাজ করার জন্য আমাদের প্রায়ই ইউনিক
অক্ষর খুঁজে বের করতে হয়। উদাহরণস্বরুপ, আমাদের কাছে একটি স্ট্রিং (‘hello world’) আছে এবং এখন এই স্ট্রিংয়ে
থাকা ইউনিক বা একবার করে আসা অক্ষরগুলো বের করতে চাই। আজকের ব্লগে জাভাস্ক্রীপ্টের
মাধ্যমে কিভাবে এই সমস্যার সমাধান সহজে করা যায় তার কয়েকটি পদ্ধতি নিয়ে আলোচনা
করবো।
for লুপ এবং includes মেথড ব্যবহারের মাধ্যমে
function getUniqueCharacters(str) {
let uniqueChars = ''; // ইউনিক অক্ষর সংরক্ষণের জন্য খালি স্ট্রিং
for (let char of str) {
// যদি অক্ষরটি ইউনিক স্ট্রিং-এ না থাকে, তবে যোগ করা হয়
if (!uniqueChars.includes(char)) {
uniqueChars += char;
}
}
return uniqueChars;
}
// উদাহরণ
const input = "hello world";
console.log(getUniqueCharacters(input)); // "helo wrd"
filter মেথড ব্যবহারের মাধ্যমে
function getUniqueCharacters(str) {
return str
.split('') // স্ট্রিংকে অক্ষরের অ্যারেতে ভেঙে ফেলা হয়
.filter((char, index, arr) => arr.indexOf(char) === index) // শুধুমাত্র ইউনিক অক্ষরগুলো ফিল্টার করা হয়
.join(''); // অ্যারেকে পুনরায় স্ট্রিংয়ে কনভার্ট করা হয়
}
// উদাহরণ
const input = "hello world";
console.log(getUniqueCharacters(input)); // "helo wrd"
reduce
মেথড ব্যবহারের মাধ্যমে
function getUniqueCharacters(str) {
return str.split('').reduce((uniqueChars, char) => {
// যদি ইউনিক স্ট্রিংয়ে অক্ষরটি না থাকে তবে যোগ করা হয়
return uniqueChars.includes(char) ? uniqueChars : uniqueChars + char;
}, '');
}
// উদাহরণ
const input = "hello world";
console.log(getUniqueCharacters(input)); // "helo wrd"
রেগুলার এক্সপ্রেশন (RegEx) ব্যবহারের মাধ্যমে
function getUniqueCharacters(str) {
return str.replace(/(.)(?=.*\1)/g, ''); // প্রতি অক্ষরের জন্য প্রথম ম্যাচ ধরে রাখে এবং বাকীগুলো বাদ দেওয়া হয়
}
// উদাহরণ
const input = "hello world";
console.log(getUniqueCharacters(input)); // "helo wrd"
ওয়েবসাইটটি বুকমার্ক করে রাখুন! পোষ্টটি যদি ভালো লাগে এবং বন্ধুরা যাতে মিস না করে, পোষ্টটি শেয়ার করতে ভুলবেন না। অবশ্যই লাইক ও কমেন্ট করবেন যাতে করে আমরা প্রতিনিয়ত নতুন নতুন সমস্যার পাশাপাশি সমাধান নিয়ে হাজির হতে পারি এবং আপনাদেরও যদি কোডিং সম্পর্কিত কোনো সমস্যা থাকে তাহলে কমেন্টবক্সে জানিয়ে দিন সমাধান করার চেষ্টা করবো, ইনশাআল্লাহ্।