Package org.apache.regexp
Class REProgram
- java.lang.Object
-
- org.apache.regexp.REProgram
-
- All Implemented Interfaces:
java.io.Serializable
public class REProgram extends java.lang.Object implements java.io.Serializable
A class that holds compiled regular expressions. This is exposed mainly for use by the recompile utility (which helps you produce precompiled REProgram objects). You should not otherwise need to work directly with this class.- Version:
- $Id: REProgram.java 518156 2007-03-14 14:31:26Z vgritsenko $
- Author:
- Jonathan Locke
- See Also:
RE
,RECompiler
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description (package private) int
flags
(package private) char[]
instruction
(package private) int
lenInstruction
(package private) int
maxParens
(package private) static int
OPT_HASBACKREFS
(package private) static int
OPT_HASBOL
(package private) char[]
prefix
-
Constructor Summary
Constructors Constructor Description REProgram(char[] instruction)
Constructs a program object from a character arrayREProgram(char[] instruction, int lenInstruction)
Constructs a program object from a character arrayREProgram(int parens, char[] instruction)
Constructs a program object from a character array
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description char[]
getInstructions()
Returns a copy of the current regular expression program in a character array that is exactly the right length to hold the program.char[]
getPrefix()
Returns a copy of the prefix of current regular expression program in a character array.void
setInstructions(char[] instruction, int lenInstruction)
Sets a new regular expression program to run.
-
-
-
Field Detail
-
OPT_HASBACKREFS
static final int OPT_HASBACKREFS
- See Also:
- Constant Field Values
-
OPT_HASBOL
static final int OPT_HASBOL
- See Also:
- Constant Field Values
-
instruction
char[] instruction
-
lenInstruction
int lenInstruction
-
prefix
char[] prefix
-
flags
int flags
-
maxParens
int maxParens
-
-
Constructor Detail
-
REProgram
public REProgram(char[] instruction)
Constructs a program object from a character array- Parameters:
instruction
- Character array with RE opcode instructions in it
-
REProgram
public REProgram(int parens, char[] instruction)
Constructs a program object from a character array- Parameters:
parens
- Count of parens in the programinstruction
- Character array with RE opcode instructions in it
-
REProgram
public REProgram(char[] instruction, int lenInstruction)
Constructs a program object from a character array- Parameters:
instruction
- Character array with RE opcode instructions in itlenInstruction
- Amount of instruction array in use
-
-
Method Detail
-
getInstructions
public char[] getInstructions()
Returns a copy of the current regular expression program in a character array that is exactly the right length to hold the program. If there is no program compiled yet, getInstructions() will return null.- Returns:
- A copy of the current compiled RE program
-
setInstructions
public void setInstructions(char[] instruction, int lenInstruction)
Sets a new regular expression program to run. It is this method which performs any special compile-time search optimizations. Currently only two optimizations are in place - one which checks for backreferences (so that they can be lazily allocated) and another which attempts to find an prefix anchor string so that substantial amounts of input can potentially be skipped without running the actual program.- Parameters:
instruction
- Program instruction bufferlenInstruction
- Length of instruction buffer in use
-
getPrefix
public char[] getPrefix()
Returns a copy of the prefix of current regular expression program in a character array. If there is no prefix, or there is no program compiled yet,getPrefix
will return null.- Returns:
- A copy of the prefix of current compiled RE program
-
-