二进制数的最短正则表达式,偶数为0或奇数为1

前端之家收集整理的这篇文章主要介绍了二进制数的最短正则表达式,偶数为0或奇数为1前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
写一个包含偶数0或奇数1的表达式

我得到了:

1*(01*01*)* + 0*10*(10*10*)*

其中第一部分表示偶数0,第二部分表示奇数1

但是,应该是一个我没看到的简化解决方案。任何提示

奇数1s部分:0 * 1(0 | 10 * 1)*

偶数零件,取决于:

>空字符串正确:(1 | 01 * 0)*
> No-0s is even-0s:(1 | 01 * 0)
>必须至少有两个0:1 *(01 * 01 *)(如OP中)

老答案:在案件1和案件2下是正确的

(1*(01*0)*)+ | 0*1(0*(10*1)*)*

赞许@OGHaza有用的评论

原文链接:https://www.f2er.com/regex/357633.html

猜你在找的正则表达式相关文章