Monq.jfa —a DFA implementation for Java
- download the binary distribution (.jar),
- read the API documentation,
- have a a look at the test coverage overview,
- clone from GitHub or
- release notes
Java Finite Automata
The Java class library monq.jfa provides fast and flexible text
filtering with regular expressions. In contrast to
monq.jfa allows a
regular expression to be bound to an action that is automatically
called whenever a match is spotted in an input stream.
In addition it is possible to combine several tenthousand regex/action pairs into one machinery called a Deterministic Finite Automaton (DFA). The DFA filters input to output by looking for matches of all regular expressions in parallel, calling their actions to reformat the text or to incrementally built up a data structure.
A general purpose TCP server and associated classes in
monq.net allow the bigger DFAs to be run as
If you need a GPL free version of the software to use in closed source projects, please contact me. This software was originally developed at the Text Mining Group of Dietrich Rebholz at the EBI by me and my colleagues during 2003 to 2006.
Is this for you?
To quickly see the pros and cons of
compared to other regular expression engines, read the Key
Features section of the tutorial.