Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将字符串拆分为等长字符串数组_Javascript - Fatal编程技术网

Javascript 将字符串拆分为等长字符串数组

Javascript 将字符串拆分为等长字符串数组,javascript,Javascript,我有一个字符串,我需要分裂成更小的字符串,长度相等6。我尝试使用: 'abcdefghijklmnopqrstuvwxyz'.split(/(.{6})/) 但它返回一个包含空字符串的数组,如下所示: ["", "abcdef", "", "ghijkl", "", "mnopqr", "", "stuvwx", ""] 与全局标志一起使用match,而不是split{1,6},以包括匹配字符串的最后一部分。默认情况下,模式是贪婪的,这意味着尽可能多地匹配。因此,{1,6}将只匹配字符串末尾

我有一个字符串,我需要分裂成更小的字符串,长度相等6。我尝试使用:

'abcdefghijklmnopqrstuvwxyz'.split(/(.{6})/)
但它返回一个包含空字符串的数组,如下所示:

["", "abcdef", "", "ghijkl", "", "mnopqr", "", "stuvwx", ""]

与全局标志一起使用
match
,而不是split<需要code>{1,6},以包括匹配字符串的最后一部分。默认情况下,模式是贪婪的,这意味着尽可能多地匹配。因此,
{1,6}
将只匹配字符串末尾少于6个字符

'abcdefghijklmnopqrstuvwxyz'.match(/.{1,6}/g);
结果:

["abcdef", "ghijkl", "mnopqr", "stuvwx", "yz"];
请注意,返回的对象是一个真数组。要验证:

console.log('.'.match(/./g) instanceof Array);  //true

请注意,
与任何字符都不匹配。信息技术使用
[\s\s]
来确保它可以在多行字符串上工作。这是一个非常漂亮的解决方案!您可以使用s(“dotAll”)标志,而不是使用[\s\s]