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,Unwrappable<TokenStream>
public final class ReverseStringFilter extends TokenFilter
Reverse token string, for example "country" => "yrtnuoc".If
markeris 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 charINFORMATION_SEPARATOR_MARKERExample marker character: U+001F (INFORMATION SEPARATOR ONE)static charPUA_EC00_MARKERExample marker character: U+EC00 (PRIVATE USE AREA: EC00)static charRTL_DIRECTION_MARKERExample marker character: U+200F (RIGHT-TO-LEFT MARK)static charSTART_OF_HEADING_MARKERExample 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 booleanincrementToken()static voidreverse(char[] buffer)Reverses the given input buffer in-placestatic voidreverse(char[] buffer, int len)Partially reverses the given input buffer in-place from offset 0 up to the given length.static voidreverse(char[] buffer, int start, int len)Partially reverses the given input buffer in-place from the given offset up to the given length.static Stringreverse(String input)Reverses the given input string-
Methods inherited from class org.apache.lucene.analysis.TokenFilter
close, end, reset, unwrap
-
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-TokenStreamto 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
markercharacter.- Parameters:
in-TokenStreamto filtermarker- A character used to mark reversed tokens
-
-
Method Detail
-
incrementToken
public boolean incrementToken() throws IOException- Specified by:
incrementTokenin 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
-
-