Cho chuỗi S gồm chữ cái, số và ký tự đặc biệt. Viết chương trình tách thành ba chuỗi S1, S2, S3 sao cho:
- S1 chứa tất cả chữ cái trong S
- S2 chứa tất cả số trong S
- S3 chứa tất cả ký tự đặc biệt trong S
Thứ tự ký tự trong S1, S2, S3 giữ nguyên như trong S.
Ví dụ
Dưới đây là đoạn code:
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));Kết quả
Đoạn code sẽ in ra console:
{
numbers: '115',
alpha: 'ThsStringCntnsdfferentchractrs',
special: '! 0@ @'
}