org.apache.lucene.analysis.phonetic

Class PhoneticFilterFactory

  • All Implemented Interfaces:
    ResourceLoaderAware


    public class PhoneticFilterFactory
    extends TokenFilterFactory
    implements ResourceLoaderAware
    Factory for PhoneticFilter. Create tokens based on phonetic encoders from Apache Commons Codec.

    This takes one required argument, "encoder", and the rest are optional:

    encoder
    required, one of "DoubleMetaphone", "Metaphone", "Soundex", "RefinedSoundex", "Caverphone" (v2.0), "ColognePhonetic" or "Nysiis" (case insensitive). If encoder isn't one of these, it'll be resolved as a class name either by itself if it already contains a '.' or otherwise as in the same package as these others.
    inject
    (default=true) add tokens to the stream with the offset=0
    maxCodeLength
    The maximum length of the phonetic codes, as defined by the encoder. If an encoder doesn't support this then specifying this is an error.
     <fieldType name="text_phonetic" class="solr.TextField" positionIncrementGap="100">
       <analyzer>
         <tokenizer class="solr.WhitespaceTokenizerFactory"/>
         <filter class="solr.PhoneticFilterFactory" encoder="DoubleMetaphone" inject="true"/>
       </analyzer>
     </fieldType>
    See Also:
    PhoneticFilter