我有一个字符串,例如6个字节;每个值都可以为“ 0”或“ 1”。哪个CAtlRegExp正则表达式与这些字节的任何0/1组合但并非全0匹配?
例如:
0001010 Match
0000001 Match
0000010 Match
1111111 Match
0000000 No match
我以为
^[01][01][01][01][01][01]$
但这个也匹配“ 000000”
并且在POSIX正则表达式中?
提前致谢
如您在问题中所暗示的,如果除了零和一的混合字符串之外没有其他输入是可能的,那么您所要做的就是找到一个或一个非零字符,即1
或[^0]
。如果找到一个匹配项,它将为您提供一个匹配项。
如果您的regex风格支持前瞻,并且您还希望在regex中进行语法检查,则可以尝试
(?=[01]{6})0*1
这肯定会确保6个零(或所需长度的更改)为零或一,然后检查是否有一个可能以零为前缀的零。
编辑:签出CAtlRegExp,它不支持向前看:(。但是我有一个甚至更简单的正则表达式,可能可以完成这项工作:
{0*1+[01]*}
这不会验证长度,但是应该可以满足您的其他需求。如果需要的话,还捕获字符串(CAtlRegExp风格)。如果没有,请卸下支架。希望这可以帮助。
问候
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句