银行卡号每隔四位添加一个分隔符
输入卡号:622848110110634315
输出卡号:6228 4811 0110 0634 315
思路:输入一个字符串,分隔成数组,循环数组,如果到第四位就加分隔符号,否则还是自己。下面封装成一个方法,可以每任意位数添加任意分隔符
/** * 字符串分割公共方法 * @param str string [要分割的字符串(卡号)] * @param gap number [以多少位分隔] * @param sep [分隔符] * @return string [返回值是分隔后的字符串] */ const formatSplitString = (str = '', gap = 1, sep = ' ') => { if (!str) { return ''; } let l = str.length - 1; let strArr = str.split(''); // 将字符串分割成字符串数组 return strArr.map((elem, i) => { if (i % gap === gap - 1 && i !== l) { return elem + sep; // 当前元素+分隔符 } else { return elem; } }).join(''); // 放入一个字符串 }
测试一下:
四位数空格分隔:formatSplitString('622848110110634315', 4, ' ');
输出:
![](https://img2018.cnblogs.com/blog/1338298/201905/1338298-20190516135749090-2020625629.png)
四位数逗号分隔:formatSplitString('622848110110634315', 4, ',');
输出:
三位数空格分隔:formatSplitString('622848110110634315', 3, ' ');
输出:
看过别人还用过正则,实现的方式有很多种。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步