如何将一串数字分成 javascript 中的块
How to split a string of numbers in to chunks in javascript
假设我有一个带有随机数的字符串,如下所示 11111111133333333333222222220000000111111010101010223311232323
我想将上面的字符串拆分为每个数字形成的块,并可能将其放入数组或对象中(不要紧)。
到目前为止,我想到的第一个解决方案是遍历字符串,如果您发现与前一个字符不同的字符,则开始将当前字符推送到一个对象中。我找到的第二个解决方案是将字符串中的每个字符转换替换为执行转换的字符加上中间的 space 字符,然后将此字符串拆分为 space 字符。
第二种解决方案对我来说很难实现,因为我想不出正则表达式会是什么样子。第一个解决方案是可行的,但编码太多,我希望存在更快的解决方案。
因此,预期输出将是一个一维数组,其中每个单元格都将包含如下数字块(对于上述字符串)。
[111111111, 33333333333, 22222222, 0000000,
111111, 0, 1, 0, 1, 0, 1, 0,
1, 0, 22, 33, 11, 2, 3, 2, 3, 2, 3]
您可以匹配一个角色和跟随同一组。
var string = '11111111133333333333222222220000000111111010101010223311232323',
result = string.match(/(.)*/g);
console.log(result);
假设我有一个带有随机数的字符串,如下所示 11111111133333333333222222220000000111111010101010223311232323
我想将上面的字符串拆分为每个数字形成的块,并可能将其放入数组或对象中(不要紧)。
到目前为止,我想到的第一个解决方案是遍历字符串,如果您发现与前一个字符不同的字符,则开始将当前字符推送到一个对象中。我找到的第二个解决方案是将字符串中的每个字符转换替换为执行转换的字符加上中间的 space 字符,然后将此字符串拆分为 space 字符。 第二种解决方案对我来说很难实现,因为我想不出正则表达式会是什么样子。第一个解决方案是可行的,但编码太多,我希望存在更快的解决方案。
因此,预期输出将是一个一维数组,其中每个单元格都将包含如下数字块(对于上述字符串)。
[111111111, 33333333333, 22222222, 0000000,
111111, 0, 1, 0, 1, 0, 1, 0,
1, 0, 22, 33, 11, 2, 3, 2, 3, 2, 3]
您可以匹配一个角色和跟随同一组。
var string = '11111111133333333333222222220000000111111010101010223311232323',
result = string.match(/(.)*/g);
console.log(result);