不使用“扩展”正则表达式运算符,例如 {}、?、^ 和 +,仅使用| () * 和 concat,如果语言中的唯一字符是 0 和 1,正则表达式如何找到长度为 4 或更短的所有字符串?
正则表达式应匹配:
0 或 1
10 或 01
111 或 110 或其他长度 3 个字符串
0011 或 0010 或其他长度为 4 的字符串
但不是 01101 或任何 5 或更长的字符串。
我能够为该语言绘制一个确定性的有限状态自动机,但未能成功确定正则表达式。
我的猜测是它不能使用 * 并且类似于 (0|1)(0|1)(0|1)(0|1) 但我没有办法制作最后三组括号可选的。
编辑:这是一个家庭作业问题