我知道如何将正则表达式转换为 FSM,但不完全确定如何反转它。
这个例子的正则表达式是什么?
您的 DFA 遗嘱的正则表达式是 (b + ab*a)*
语言描述:符号b
可以以任何方式出现,但限制是a
可以在语言字符串中出现偶数次。
(b + ab*a)*
^ ^ ^
| | "* because loop on initial state"
| | "* on b because of self loop with label b on 2nd state"
|
|"+ because two outgoing edges, One is self loop other via 2nd state"
Here: + means Union, * means repetition for zero or more times
注意:语言字符串示例:{^, b, aa, bababb...}
(偶数a
s 和任何b
s 包括 null)