একটি স্ট্রিং S দেওয়া আছে, যাতে অক্ষর, সংখ্যা এবং বিশেষ ক্যারেক্টার আছে। আমাদের একটি প্রোগ্রাম লিখতে হবে যা স্ট্রিংটিকে তিনটি আলাদা স্ট্রিং S1, S2 এবং S3-এ ভাগ করবে, যেন:
- স্ট্রিং S1-এ S-তে থাকা সকল অক্ষর থাকবে,
- স্ট্রিং S2-এ S-তে থাকা সকল সংখ্যা থাকবে, এবং
- S3-এ S-তে থাকা সকল বিশেষ ক্যারেক্টার থাকবে।
S1, S2 এবং S3-তে ক্যারেক্টারগুলো ইনপুটে যেন যেক্রমে থাকে, তেমনি ক্রমে থাকবে।
উদাহরণ
নিচের কোডটি দেখুন:
const str = "Th!s String C0nt@1ns d1fferent ch@ract5rs";
const seperateCharacters = str => {
const strArr = str.split("");
return strArr.reduce((acc, val) => {
let { numbers, alpha, special } = acc;
if(+val){
numbers += val;
}else if(val.toUpperCase() !== val.toLowerCase()){
alpha += val;
}else{
special += val;
};
return { numbers, alpha, special };
}, {
numbers: '',
alpha: '',
special: ''
});
};
console.log(seperateCharacters(str));
আউটপুট
এটি কনসোলে নিচের আউটপুট তৈরি করবে:
{
numbers: '115',
alpha: 'ThsStringCntnsdfferentchractrs',
special: '! 0@ @'
}