public class NFA
extends Object
Compilation: javac NFA.java
Execution: java NFA regexp text
Dependencies: Stack.java Bag.java Digraph.java DirectedDFS.java
% java NFA "(A*B|AC)D" AAAABD
true
% java NFA "(A*B|AC)D" AAAAC
false
% java NFA "(a|(bc)*d)*" abcbcd
true
% java NFA "(a|(bc)*d)*" abcbcbcdaaaabcbcdaaaddd
true
Remarks
-----------
- This version does not suport the + operator or multiway-or.
- This version does not handle character classes,
metacharacters (either in the text or pattern), capturing
capabilities, greedy vs. relucantant modifier, and
other features in industrial-strength implementations such
as java.util.regexp.