首页 > 解决方案 > 将给定的字符串分成相等的部分,其中子字符串的数量将具有相同的大小和动态性质?

问题描述

我已经阅读了很多关于 stackoverflow 的答案,但是无法找到解决方案。

假设我们有一个字符串'Hello World'。这个想法是Hello World分成相等的部分。

例子:

'he','ll', 'ow', 'or','ld'

字符串可以包含 N 个字符,并且每次都必须将字符串拆分为相等的子字符串。如果hello World我们有hello worlds拆分字符串,

'he','ll', 'ow', 'or','ld', 's'

请注意,没有提供可以将字符串划分为的 N。这里的 N 根据提供的字符串是动态的。所以 N 可以是 2,3,4...N,具体取决于字符串的大小。

标签: javascriptarraysstringwebdata-structures

解决方案


您可以给出子字符串的长度并迭代直到调整字符串的末尾。

function split(string, size) {
    var splitted = [],
        i = 0;
        
    string = string.match(/\S+/g).join('');
    while (i < string.length) splitted.push(string.slice(i, i += size));
    return splitted;
}

console.log(...split('Hello World', 2));
console.log(...split('Hello Worlds', 2));


推荐阅读