Class ReverseStringFilter
- java.lang.Object
-
- org.apache.lucene.util.AttributeSource
-
- org.apache.lucene.analysis.TokenStream
-
- org.apache.lucene.analysis.TokenFilter
-
- org.apache.lucene.analysis.reverse.ReverseStringFilter
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
public final class ReverseStringFilter extends TokenFilter
Reverse token string, for example "country" => "yrtnuoc".If
marker
is supplied, then tokens will be also prepended by that character. For example, with a marker of \u0001, "country" => "\u0001yrtnuoc". This is useful when implementing efficient leading wildcards search.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource
AttributeSource.State
-
-
Field Summary
Fields Modifier and Type Field Description static char
INFORMATION_SEPARATOR_MARKER
Example marker character: U+001F (INFORMATION SEPARATOR ONE)static char
PUA_EC00_MARKER
Example marker character: U+EC00 (PRIVATE USE AREA: EC00)static char
RTL_DIRECTION_MARKER
Example marker character: U+200F (RIGHT-TO-LEFT MARK)static char
START_OF_HEADING_MARKER
Example marker character: U+0001 (START OF HEADING)-
Fields inherited from class org.apache.lucene.analysis.TokenFilter
input
-
Fields inherited from class org.apache.lucene.analysis.TokenStream
DEFAULT_TOKEN_ATTRIBUTE_FACTORY
-
-
Constructor Summary
Constructors Constructor Description ReverseStringFilter(TokenStream in)
Create a new ReverseStringFilter that reverses all tokens in the suppliedTokenStream
.ReverseStringFilter(TokenStream in, char marker)
Create a new ReverseStringFilter that reverses and marks all tokens in the suppliedTokenStream
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
incrementToken()
static void
reverse(char[] buffer)
Reverses the given input buffer in-placestatic void
reverse(char[] buffer, int len)
Partially reverses the given input buffer in-place from offset 0 up to the given length.static void
reverse(char[] buffer, int start, int len)
Partially reverses the given input buffer in-place from the given offset up to the given length.static String
reverse(String input)
Reverses the given input string-
Methods inherited from class org.apache.lucene.analysis.TokenFilter
close, end, reset
-
Methods inherited from class org.apache.lucene.util.AttributeSource
addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, endAttributes, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, removeAllAttributes, restoreState, toString
-
-
-
-
Field Detail
-
START_OF_HEADING_MARKER
public static final char START_OF_HEADING_MARKER
Example marker character: U+0001 (START OF HEADING)- See Also:
- Constant Field Values
-
INFORMATION_SEPARATOR_MARKER
public static final char INFORMATION_SEPARATOR_MARKER
Example marker character: U+001F (INFORMATION SEPARATOR ONE)- See Also:
- Constant Field Values
-
PUA_EC00_MARKER
public static final char PUA_EC00_MARKER
Example marker character: U+EC00 (PRIVATE USE AREA: EC00)- See Also:
- Constant Field Values
-
RTL_DIRECTION_MARKER
public static final char RTL_DIRECTION_MARKER
Example marker character: U+200F (RIGHT-TO-LEFT MARK)- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ReverseStringFilter
public ReverseStringFilter(TokenStream in)
Create a new ReverseStringFilter that reverses all tokens in the suppliedTokenStream
.The reversed tokens will not be marked.
- Parameters:
in
-TokenStream
to filter
-
ReverseStringFilter
public ReverseStringFilter(TokenStream in, char marker)
Create a new ReverseStringFilter that reverses and marks all tokens in the suppliedTokenStream
.The reversed tokens will be prepended (marked) by the
marker
character.- Parameters:
in
-TokenStream
to filtermarker
- A character used to mark reversed tokens
-
-
Method Detail
-
incrementToken
public boolean incrementToken() throws IOException
- Specified by:
incrementToken
in classTokenStream
- Throws:
IOException
-
reverse
public static String reverse(String input)
Reverses the given input string- Parameters:
input
- the string to reverse- Returns:
- the given input string in reversed order
-
reverse
public static void reverse(char[] buffer)
Reverses the given input buffer in-place- Parameters:
buffer
- the input char array to reverse
-
reverse
public static void reverse(char[] buffer, int len)
Partially reverses the given input buffer in-place from offset 0 up to the given length.- Parameters:
buffer
- the input char array to reverselen
- the length in the buffer up to where the buffer should be reversed
-
reverse
public static void reverse(char[] buffer, int start, int len)
Partially reverses the given input buffer in-place from the given offset up to the given length.- Parameters:
buffer
- the input char array to reversestart
- the offset from where to reverse the bufferlen
- the length in the buffer up to where the buffer should be reversed
-
-