首页 > 解决方案 > 排除重复模式的最简单的正则表达式是什么?

问题描述

我尝试为包含000字母位置的字符串集编写正则表达式{0,1}。我正在寻找运营商最少的解决方案。

我试过了:

(!+0+00)(1(!+0+00))*

哪里

我也不确定它是否正确。

我不知道是否存在其他运算符,例如出现次数等。

标签: regexautomatafinite-automatanfaautomata-theory

解决方案


答案很简单:

(!|0|00)(11*(!|0|00))*

因为允许有任意数量的 1,并且在这些 1 之间我们最多可以有两个 0。至少如果我正确理解它是一种没有元素包含子字符串 000 的语言。


推荐阅读