Biter

regexp
Class REMatchEnumeration

java.lang.Object
  |
  +--regexp.REMatchEnumeration

public class REMatchEnumeration
extends Object
implements Enumeration

An REMatchEnumeration enumerates regular expression matches over a given input text. You obtain a reference to an enumeration using the getMatchEnumeration() methods on an instance of RE.

REMatchEnumeration does lazy computation; that is, it will not search for a match until it needs to. If you'd rather just get all the matches at once in a big array, use the getAllMatches() methods on RE. However, using an enumeration can help speed performance when the entire text does not need to be searched immediately.

The enumerated type is especially useful when searching on an InputStream, because the InputStream read position cannot be guaranteed after calling getMatch() (see the description of that method for an explanation of why). Enumeration also saves a lot of overhead required when calling getMatch() multiple times.

Author:
Wes Biggs

Field Summary
private  StringBuffer m_buffer
           
private  int m_eflags
           
private  RE m_expr
           
private  int m_index
           
private  CharIndexed m_input
           
private  REMatch m_match
           
private  int m_more
           
private static int MAYBE
           
private static int NO
           
private static int YES
           
 
Constructor Summary
(package private) REMatchEnumeration(RE expr, CharIndexed input, int index, int eflags)
           
 
Method Summary
 boolean hasMoreElements()
          Returns true if there are more matches in the input text.
 boolean hasMoreMatches()
          Returns true if there are more matches in the input text.
 boolean hasMoreMatches(StringBuffer f_buffer)
          Returns true if there are more matches in the input text.
 Object nextElement()
          Returns the next match in the input text.
 REMatch nextMatch()
          Returns the next match in the input text.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

YES

private static final int YES

MAYBE

private static final int MAYBE

NO

private static final int NO

m_more

private int m_more

m_match

private REMatch m_match

m_expr

private RE m_expr

m_input

private CharIndexed m_input

m_index

private int m_index

m_eflags

private int m_eflags

m_buffer

private StringBuffer m_buffer
Constructor Detail

REMatchEnumeration

REMatchEnumeration(RE expr,
                   CharIndexed input,
                   int index,
                   int eflags)
Method Detail

hasMoreElements

public boolean hasMoreElements()
Returns true if there are more matches in the input text.
Specified by:
hasMoreElements in interface Enumeration

hasMoreMatches

public boolean hasMoreMatches()
Returns true if there are more matches in the input text.

hasMoreMatches

public boolean hasMoreMatches(StringBuffer f_buffer)
Returns true if there are more matches in the input text. Saves the text leading up to the match (or to the end of the input) in the specified buffer.

nextElement

public Object nextElement()
                   throws NoSuchElementException
Returns the next match in the input text.
Specified by:
nextElement in interface Enumeration

nextMatch

public REMatch nextMatch()
                  throws NoSuchElementException
Returns the next match in the input text. This method is provided for convenience to avoid having to explicitly cast the return value to class REMatch.

Biter

From the Biter project.