java - 在java中创建自动机

标签 java regex automata

如何在 Java 中创建这样的程序,它可以接受自动机正则表达式和最小字符串长度(int)并生成可能的字符串?

正则正则表达式的示例是

regex             possible strings
(a+b)*            abbababababbbab
ab(a+b)           ababababab, abaaaa, abbbbb, abbaba, . . .

最佳答案

  1. 编译自动机(标准自动机教科书练习)
  2. 通过沿着边缘行走来模拟自动机,记录您使用的符号(如果需要,可以分支到并行模拟)
  3. 每次达到接受状态时输出当前字符串。

关于java - 在java中创建自动机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9176865/

相关文章:

regular-language - 如何L={wxw^R| w, x 属于 {a,b}^+ } 是正则语言

java - 按内部对象(字符串、日期等)逆序对 ArrayList<Object[]> 进行排序

javascript - 从 url 字符串中获取 ID

python - python中的正则表达式子 - 对字符进行分组以识别3个字符并且仅更改其中一个

regex - 为什么正则表达式捕获组索引为一个?

automata - Pumping 引理中的 'pumping length' 到底是什么?

algorithm - 克里普克结构

java - 使用 boolean 值创建选项 >reserved<?

java - 为什么此代码会抛出 NullPointerException?

java - java从String中获取某个子字符串