我需要使用正则表达式匹配1s OR(AND)0。
例如
^((1+|0+)|(1*,0*))1((1+|0+)|(1*,0*))1+((1+|0+)|(1*,0*))$
匹配01001110
。
我想知道如何匹配"either series of 1 or series of 0 or mixed series of 1 and 0"
我尝试了以下内容,但不适用于字符串1010
。
^((1+|0+)|(1*,0*))1+((1+|0+)|(1*,0*))$
这个想法是在this问题中," A" s可以表示为1+ OR 0+或两者的混合。 所以我试图推导出如上所示的正则表达式。
答案 0 :(得分:2)
我不确定这是否是您想要的,但如果您想查找仅包含1
和/或0
的系列,那么您的正则表达式可能看起来像(1|0)+
也使用character class作为[01]+
答案 1 :(得分:1)
如果您只是匹配二进制数字,则可以使用:
Pattern any = Pattern.compile("[01]+");
如果您想要备用二进制数字,可以使用:
Pattern alt = Pattern.compile("((?<=0|^)1|1(?=0|$))+");
答案 2 :(得分:1)