我的目标是从二进制字符串中提取0或1的块。使用regex.match查找模式会提取所有块并失去顺序。我需要能够将任何长度的二进制文件传递给它。我该如何正确地提取块,以便'10011000001'->'1','00','11','00000','1'?
我只能考虑运行一个循环以计算从0到1的更改数量,然后在其上交替运行regex.match(),但这肯定是无效的。
答案 0 :(得分:5)
您可以寻找一个数字并寻找更多的同一组。
var string = '10011000001',
parts = string.match(/([01])\1*/g);
console.log(parts);