将字符串拆分成组 – JavaScript

javascriptweb developmentfront end technologyobject oriented programming

给定一个字符串 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@  @'
}

相关文章