1 2 /** 3 * Created by IntelliJ IDEA. 4 * Code By: Bo Li, libo@libo.me 5 * Date: 2009-12-10 6 * Time: 15:27:37 7 * CBIT, Roskilde University 8 */ 9 public class Test { 10 public static void main(String[] args){ 11 System.out.println("Regular Expression:\n"); 12 RegEx a = new SeqRe(new SymRe("open"),new SeqRe(new StaRe(new AltRe(new SymRe("read"),new SymRe("write"))), new SymRe("close"))); 13 NFA.stateName name = new NFA.stateName(); 14 NFA nfa1=a.translate(name); 15 DFA dfa1 = a.translate(name).NfaToDfa(); 16 System.out.println("dfa1=="+dfa1); 17 18 NFA nfa = new NFA(1,8); 19 nfa.AddTransitions(1,2,"lambda"); 20 nfa.AddTransitions(2,3,"lambda"); 21 nfa.AddTransitions(2,4,"lambda"); 22 nfa.AddTransitions(3,5,"a"); 23 nfa.AddTransitions(4,6,"b"); 24 nfa.AddTransitions(5,7,"lambda"); 25 nfa.AddTransitions(6,7,"lambda"); 26 nfa.AddTransitions(7,8,"c"); 27 DFA dfa = nfa.NfaToDfa(); 28 System.out.println("dfa"+dfa); 29 } 30 31 } 32