Harald Kirsch

genug Unfug.

Monq.jfa —a DFA implementation for Java

Java Finite Automata

The Java class library monq.jfa provides fast and flexible text filtering with regular expressions. In contrast to java.util.regex, 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 servers.

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 monq.jfa compared to other regular expression engines, read the Key Features section of the tutorial.