标签: regex algorithm dfa nfa kleene-star
我正在将一组给定的正则表达式转换为单个NFA,但我遇到了一些问题。我应该如何转换正则表达式,例如“ab。* c”(表示匹配'a','b',任意数量的字符,然后是'c')?
我的最终目标是将单个NFA转换为DFA(我正在使用子集构造算法)。
答案 0 :(得分:1)
正则表达式中的.*对应于NFA中其字母表中每个字母的循环状态。
.*
该状态也将c转换为接受状态。
c
在循环转换和接受转换中都有c这是完全可以的 - 这就是为什么它是不确定的。