org.apache.regexp

Class REProgram

public class REProgram extends Object implements 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

Field Summary
intflags
char[]instruction
intlenInstruction
intmaxParens
static intOPT_HASBACKREFS
static intOPT_HASBOL
char[]prefix
Constructor Summary
REProgram(char[] instruction)
Constructs a program object from a character array
REProgram(int parens, char[] instruction)
Constructs a program object from a character array
REProgram(char[] instruction, int lenInstruction)
Constructs a program object from a character array
Method Summary
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.
voidsetInstructions(char[] instruction, int lenInstruction)
Sets a new regular expression program to run.

Field Detail

flags

int flags

instruction

char[] instruction

lenInstruction

int lenInstruction

maxParens

int maxParens

OPT_HASBACKREFS

static final int OPT_HASBACKREFS

OPT_HASBOL

static final int OPT_HASBOL

prefix

char[] prefix

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 program instruction 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 it lenInstruction 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

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

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 buffer lenInstruction Length of instruction buffer in use

Copyright © 2001-2007 Apache Software Foundation. All Rights Reserved.