我试图创建一个匹配任何只包含' 0'的字符串的正则表达式。和' 1' char,只要它不包含特定的序列" 00"或" 010"。
我的想法是这样的 1 *(011 +)*
但问题出现了,如果字符串以0结尾,如1110,那么它应该是有效的。使用我的正则表达式,任何0必须后跟两个或更多,但我无法弄清楚如何使这个特定的例外。
我需要一个正则表达式,强制任何0后跟两个或多个OR结束。这将允许以0和01结尾的序列,此外明显的"以1"结束。例如,在" 111111"中,非主流序列不存在。
我怎样才能切断短片"正则表达式中的条件,允许它根据我的规则继续,或者在那里结束?
答案 0 :(得分:1)
您可以像这样修复正则表达式:
1*(011+)*(01?)?
在末尾添加一个匹配不完整零组的(可选)组,即0
和01
。