org.apache.lucene.analysis.pattern
Class PatternReplaceCharFilter

java.lang.Object
  extended by java.io.Reader
      extended by org.apache.lucene.analysis.CharFilter
          extended by org.apache.lucene.analysis.charfilter.BaseCharFilter
              extended by org.apache.lucene.analysis.pattern.PatternReplaceCharFilter
All Implemented Interfaces:
Closeable, Readable

public class PatternReplaceCharFilter
extends BaseCharFilter

CharFilter that uses a regular expression for the target of replace string. The pattern match will be done in each "block" in char stream.

ex1) source="aa  bb aa bb", pattern="(aa)\\s+(bb)" replacement="$1#$2"
output="aa#bb aa#bb"

NOTE: If you produce a phrase that has different length to source string and the field is used for highlighting for a term of the phrase, you will face a trouble.

ex2) source="aa123bb", pattern="(aa)\\d+(bb)" replacement="$1 $2"
output="aa bb"
and you want to search bb and highlight it, you will get
highlight snippet="aa1<em>23bb</em>"

Since:
Solr 1.5

Field Summary
static int DEFAULT_MAX_BLOCK_CHARS
          Deprecated. 
 
Fields inherited from class org.apache.lucene.analysis.CharFilter
input
 
Fields inherited from class java.io.Reader
lock
 
Constructor Summary
PatternReplaceCharFilter(Pattern pattern, String replacement, int maxBlockChars, String blockDelimiter, Reader in)
          Deprecated. 
PatternReplaceCharFilter(Pattern pattern, String replacement, Reader in)
           
 
Method Summary
protected  int correct(int currentOff)
          Retrieve the corrected offset.
 int read()
           
 int read(char[] cbuf, int off, int len)
           
 
Methods inherited from class org.apache.lucene.analysis.charfilter.BaseCharFilter
addOffCorrectMap, getLastCumulativeDiff
 
Methods inherited from class org.apache.lucene.analysis.CharFilter
close, correctOffset
 
Methods inherited from class java.io.Reader
mark, markSupported, read, read, ready, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_MAX_BLOCK_CHARS

@Deprecated
public static final int DEFAULT_MAX_BLOCK_CHARS
Deprecated. 
See Also:
Constant Field Values
Constructor Detail

PatternReplaceCharFilter

public PatternReplaceCharFilter(Pattern pattern,
                                String replacement,
                                Reader in)

PatternReplaceCharFilter

@Deprecated
public PatternReplaceCharFilter(Pattern pattern,
                                           String replacement,
                                           int maxBlockChars,
                                           String blockDelimiter,
                                           Reader in)
Deprecated. 

Method Detail

read

public int read(char[] cbuf,
                int off,
                int len)
         throws IOException
Specified by:
read in class Reader
Throws:
IOException

read

public int read()
         throws IOException
Overrides:
read in class Reader
Throws:
IOException

correct

protected int correct(int currentOff)
Description copied from class: BaseCharFilter
Retrieve the corrected offset.

Overrides:
correct in class BaseCharFilter


Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.