Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.lucene.analysis.compound
Class DictionaryCompoundWordTokenFilter

    java.lang.Object
      org.apache.lucene.analysis.TokenStream
          org.apache.lucene.analysis.TokenFilter
              org.apache.lucene.analysis.compound.CompoundWordTokenFilterBase
                  org.apache.lucene.analysis.compound.DictionaryCompoundWordTokenFilter

    public class DictionaryCompoundWordTokenFilter

extends CompoundWordTokenFilterBase

A TokenFilter that decomposes compound words found in many germanic languages "Donaudampfschiff" becomes Donau, dampf, schiff so that you can find "Donaudampfschiff" even when you only enter "schiff". It uses a brute-force algorithm to achieve this.

Field Summary

Fields inherited from class org.apache.lucene.analysis.compound.CompoundWordTokenFilterBase
`DEFAULT_MAX_SUBWORD_SIZE, DEFAULT_MIN_SUBWORD_SIZE, DEFAULT_MIN_WORD_SIZE, dictionary, maxSubwordSize, minSubwordSize, minWordSize, onlyLongestMatch, tokens`

Fields inherited from class org.apache.lucene.analysis.TokenFilter
`input`

Constructor Summary
`DictionaryCompoundWordTokenFilter(TokenStream input, Set dictionary)`
`DictionaryCompoundWordTokenFilter(TokenStream input, Set dictionary, int minWordSize, int minSubwordSize, int maxSubwordSize, boolean onlyLongestMatch)`
`DictionaryCompoundWordTokenFilter(TokenStream input, String[] dictionary)`
`DictionaryCompoundWordTokenFilter(TokenStream input, String[] dictionary, int minWordSize, int minSubwordSize, int maxSubwordSize, boolean onlyLongestMatch)`

Method Summary
`protected void` | `decomposeInternal(Token token)`

Methods inherited from class org.apache.lucene.analysis.compound.CompoundWordTokenFilterBase
`addAllLowerCase, createToken, decompose, makeDictionary, makeLowerCaseCopy, next`

Methods inherited from class org.apache.lucene.analysis.TokenFilter
`close, reset`

Methods inherited from class org.apache.lucene.analysis.TokenStream
`next`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### DictionaryCompoundWordTokenFilter

    public DictionaryCompoundWordTokenFilter(TokenStream input,
                                             String[] dictionary,
                                             int minWordSize,
                                             int minSubwordSize,
                                             int maxSubwordSize,
                                             boolean onlyLongestMatch)

Parameters:
  `input` - the token stream to process
  `dictionary` - the word dictionary to match against
  `minWordSize` - only words longer than this get processed
  `minSubwordSize` - only subwords longer than this get to the output stream
  `maxSubwordSize` - only subwords shorter than this get to the output stream
  `onlyLongestMatch` - Add only the longest matching subword to the stream

### DictionaryCompoundWordTokenFilter

    public DictionaryCompoundWordTokenFilter(TokenStream input,
                                             String[] dictionary)

Parameters:
  `input` - the token stream to process
  `dictionary` - the word dictionary to match against

### DictionaryCompoundWordTokenFilter

    public DictionaryCompoundWordTokenFilter(TokenStream input,
                                             Set dictionary)

Parameters:
  `input` - the token stream to process
  `dictionary` - the word dictionary to match against. If this is a `CharArraySet` it must have set ignoreCase=false and only contain lower case strings.

### DictionaryCompoundWordTokenFilter

    public DictionaryCompoundWordTokenFilter(TokenStream input,
                                             Set dictionary,
                                             int minWordSize,
                                             int minSubwordSize,
                                             int maxSubwordSize,
                                             boolean onlyLongestMatch)

Parameters:
  `input` - the token stream to process
  `dictionary` - the word dictionary to match against. If this is a `CharArraySet` it must have set ignoreCase=false and only contain lower case strings.
  `minWordSize` - only words longer than this get processed
  `minSubwordSize` - only subwords longer than this get to the output stream
  `maxSubwordSize` - only subwords shorter than this get to the output stream
  `onlyLongestMatch` - Add only the longest matching subword to the stream

Method Detail

### decomposeInternal

    protected void decomposeInternal(Token token)

  Specified by:
    `decomposeInternal` in class `CompoundWordTokenFilterBase`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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