Precompiling the RE
Problem
You need to use the same RE many times over.
Solution
Precompile it using class recompile and include
the resulting code fragment into your Java source code.
Discussion
Some REs never change. Those that don’t can be precompiled to
speed up your program’s initialization. The class
recompile (the only class in this API whose name
doesn’t fit the Java capitalization style rules) contains a
main program that requires two arguments: a Java identifier prefix
and an RE pattern. When running it, remember that you should quote
the RE pattern, as many of the special characters are the same for
the REs as they are for many command-line interpreters. You run it by
giving the java command, the full class name,
the identifier prefix, and the RE pattern as one command line. Once
you’ve seen that the RE is correct, you can run the command
again, redirecting the results into a new Java file. You can then
edit this file into a complete program or copy it into an existing
Java file.
> java org.apache.regexp.recompile Name "[A-Z][a-z]+" // Pre-compiled regular expression '[A-Z][a-z]+' private static char[] NamePatternInstructions = { 0x007c, 0x0000, 0x0019, 0x005b, 0x0001, 0x0005, 0x0041, 0x005a, 0x005b, 0x0001, 0x0005, 0x0061, 0x007a, 0x007c, 0x0000, 0x0006, 0x0047, 0x0000, 0xfff8, 0x007c, 0x0000, 0x0003, 0x004e, 0x0000, 0x0003, 0x0045, 0x0000, 0x0000, }; private static RE NamePattern = new RE(new REProgram(NamePatternInstructions)); > java org.apache.regexp.recompile Name ...