使用regex查找bin编号中的二进制间隔

时间:2016-12-22 11:12:50

标签: php regex binary

我想用正则表达式捕获bin编号中的所有二进制空白。 例如,如果我有1010010001我想获得这3个字符串的数组:“0”,“00”,“000”但我的正则表达式不使用3-“1”表示“101”和“1001”组合。这是我的正则表达式:

/1(0+)1/g

我应该如何修改我的正则表达式以获得所需的结果?

2 个答案:

答案 0 :(得分:3)

您需要确保尾随1不是消费,将其置于积极的前瞻中:

/1(0+)(?=1)/
      ^^^^^

请参阅regex demo

相同模式的matching variation

/1\K0+(?=1)/

此处,11匹配,\K省略了此文字,然后匹配了一个或多个0,并在检查后1存在0 s。

答案 1 :(得分:0)

一个简单的解决方案是使用split()方法使用'1'拆分二进制字符串,你将获得零数组。