Class LanguageProfileBuilder
- java.lang.Object
-
- com.optimaize.langdetect.profiles.LanguageProfileBuilder
-
public class LanguageProfileBuilder extends java.lang.Object
Builder forLanguageProfile
.This class does no internal synchronization.
-
-
Field Summary
Fields Modifier and Type Field Description private @NotNull LdLocale
locale
private int
minimalFrequency
private NgramExtractor
ngramExtractor
private 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 LanguageProfileBuilder
addGram(java.lang.String ngram)
Shortcut for addGram(ngram, 1).LanguageProfileBuilder
addGram(java.lang.String ngram, int frequency)
If the builder already has this ngram, the given frequency is added to the current count.LanguageProfileBuilder
addText(java.lang.CharSequence text)
In order to use this you must set thengramExtractor
first.LanguageProfile
build()
LanguageProfileBuilder
minimalFrequency(int minimalFrequency)
LanguageProfileBuilder
ngramExtractor(@NotNull NgramExtractor ngramExtractor)
private void
removeNgramsWithLessFrequency()
-
-
-
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 thengramExtractor
first.
-
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()
-
-