Class LanguageProfileBuilder
- java.lang.Object
-
- com.optimaize.langdetect.profiles.LanguageProfileBuilder
-
public class LanguageProfileBuilder extends java.lang.ObjectBuilder forLanguageProfile.This class does no internal synchronization.
-
-
Field Summary
Fields Modifier and Type Field Description private @NotNull LdLocalelocaleprivate intminimalFrequencyprivate NgramExtractorngramExtractorprivate java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Integer>>ngrams
-
Constructor Summary
Constructors Constructor Description LanguageProfileBuilder(@NotNull LdLocale locale)LanguageProfileBuilder(@NotNull java.lang.String locale)Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LanguageProfileBuilderaddGram(java.lang.String ngram)Shortcut for addGram(ngram, 1).LanguageProfileBuilderaddGram(java.lang.String ngram, int frequency)If the builder already has this ngram, the given frequency is added to the current count.LanguageProfileBuilderaddText(java.lang.CharSequence text)In order to use this you must set thengramExtractorfirst.LanguageProfilebuild()LanguageProfileBuilderminimalFrequency(int minimalFrequency)LanguageProfileBuilderngramExtractor(@NotNull NgramExtractor ngramExtractor)private voidremoveNgramsWithLessFrequency()
-
-
-
Field Detail
-
locale
@NotNull private final @NotNull LdLocale locale
-
minimalFrequency
private int minimalFrequency
-
ngramExtractor
private NgramExtractor ngramExtractor
-
ngrams
private final java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Integer>> ngrams
-
-
Constructor Detail
-
LanguageProfileBuilder
public LanguageProfileBuilder(@NotNull @NotNull LdLocale locale)
-
LanguageProfileBuilder
@Deprecated public LanguageProfileBuilder(@NotNull @NotNull java.lang.String locale)Deprecated.
-
-
Method Detail
-
ngramExtractor
public LanguageProfileBuilder ngramExtractor(@NotNull @NotNull NgramExtractor ngramExtractor)
-
minimalFrequency
public LanguageProfileBuilder minimalFrequency(int minimalFrequency)
- Parameters:
minimalFrequency- 1-n, the default is 1. n-grams that occurred less often in the text are removed. This really should be set to something higher. Try to play with the number until you get a profile file of satisfying size, that produces good language detection results.
-
addText
public LanguageProfileBuilder addText(java.lang.CharSequence text)
In order to use this you must set thengramExtractorfirst.
-
addGram
public LanguageProfileBuilder addGram(java.lang.String ngram)
Shortcut for addGram(ngram, 1).
-
addGram
public LanguageProfileBuilder addGram(java.lang.String ngram, int frequency)
If the builder already has this ngram, the given frequency is added to the current count.
-
build
public LanguageProfile build()
-
removeNgramsWithLessFrequency
private void removeNgramsWithLessFrequency()
-
-