我已经尝试(^.*(?0){2}.*$)
来抓住0,但不知道如何抓住1&#39>
所以对于以下数据:
00
110
100
11110011
00111101
00101010
11000000
00000001
10000000
将返回的是100,00000001和10000000
答案 0 :(得分:2)
答案 1 :(得分:1)
试试这个正则表达式:
^(?=.*0.*0.*)(?=.*1.*)(?!.*1.*1.*).*$
与:
相同^(?=.*0.*0.*)(?=[^1]*1[^1]*$).*$
使用预见断言:
zero
one
one
答案 2 :(得分:0)
使用此模式
^(?=(?:.*0){2})(?=[^1]*1[^1]*$)([01]*)$
^
锚定在开头(?=(?:.*0){2})
预测至少两个0&#39> (?=[^1]*1[^1]*$)
预测只有一个' 1'到最后([01]*)
捕获任意数量的0和1,或者根据需要更改为(\d*)
$
锚定在最后
Demo 答案 3 :(得分:0)
使用负前瞻来过滤掉两个1或0或0或0的行:
^(?!.*1.*1|[^0]*(0[^0]*)?$)
答案 4 :(得分:-1)