首页 > 解决方案 > 从后面开始分割字符串

问题描述

我有以下问题:

如果我有一个给定的字符串'abcdefg',我想将其拆分为长度为 3 的子字符串数组,即[ 'abc', 'def']

为此,我使用 String.prototype.match():

'abcdefg'.match(/.{1,3}/g);

但是,如果我有一个长度不能被 3 整除的输入字符串,则'abcdefgh'结果为['abc', 'def', 'gh'],但我需要结果为['ab', 'cde', 'fgh']

有没有一种优雅的方法?

标签: javascriptregex

解决方案


您可以对以下三个字符组进行积极的展望。

console.log('abcdefgh'.match(/.{1,3}(?=(.{3})*$)/g));


推荐阅读