Regex 正好有一个子串111的正则表达式

Regex 正好有一个子串111的正则表达式,regex,Regex,我必须为该语言提供正则表达式,二进制字母表{0,1}上的所有字符串都只出现一个子字符串111 所以我想出了这个RE(0+1)*111(0+1)* 需要帮助我的RE对于子字符串111的一次出现是否正确吗 这似乎涵盖了以下语言: (0|110|10)*111(0|011|01)* 对所需零件采用正向前瞻,对受限零件采用反向前瞻: ^(?=.*111)(?!(.*111){2})[01]+$ 请参阅此正则表达式处理某些边缘情况的示例。您在一些示例字符串上试用过它吗?在一些正好有一个111的字符串和

我必须为该语言提供正则表达式,二进制字母表{0,1}上的所有字符串都只出现一个子字符串111

所以我想出了这个RE
(0+1)*111(0+1)*


需要帮助我的RE对于子字符串111的一次出现是否正确吗

这似乎涵盖了以下语言:

(0|110|10)*111(0|011|01)*

对所需零件采用正向前瞻,对受限零件采用反向前瞻:

^(?=.*111)(?!(.*111){2})[01]+$

请参阅此正则表达式处理某些边缘情况的示例。

您在一些示例字符串上试用过它吗?在一些正好有一个111的字符串和一些有多个111的字符串上尝试一下,看看它们是怎么做的。不确定单用正则表达式就可以做到这一点。最简单的方法是搜索字符串中出现了多少次
111
。01111和011111如何?你的意思是逗号包含在字母表中吗?不,我放置逗号只是为了显示“111”的位置->01111和011111之前的所有选项都以0结尾,因此您的输入将被拒绝