Sonnet::GuessLanguage
#include <Sonnet/GuessLanguage>
Public Member Functions | |
GuessLanguage () | |
GuessLanguage (const GuessLanguage &)=delete | |
~GuessLanguage () | |
QString | identify (const QString &text, const QStringList &suggestions=QStringList()) const |
GuessLanguage & | operator= (const GuessLanguage &)=delete |
void | setLimits (int maxItems, double minConfidence) |
Detailed Description
GuessLanguage determines the language of a given text.
GuessLanguage can determine the difference between ~75 languages for a given string. It is based off a Perl script originally written by Maciej Ceglowski macie.nosp@m.j@ce.nosp@m.glows.nosp@m.ki.c.nosp@m.om called Languid. His script used a 2 part heuristic to determine language. First the text is checked for the scripts it contains, then for each set of languages using those scripts a n-gram frequency model of a given language is compared to a model of the text. The most similar language model is assumed to be the language. If no language is found an empty string is returned.
- Since
- 4.3
Constructor & Destructor Documentation
◆ GuessLanguage()
Sonnet::GuessLanguage::GuessLanguage | ( | ) |
Constructor Creates a new GuessLanguage instance.
If text
is specified, it sets the text to be checked.
- Parameters
-
text the text that is to be checked
Definition at line 543 of file guesslanguage.cpp.
◆ ~GuessLanguage()
|
default |
Destructor.
Member Function Documentation
◆ identify()
QString Sonnet::GuessLanguage::identify | ( | const QString & | text, |
const QStringList & | suggestions = QStringList() ) const |
Returns the 2 digit ISO 639-1 code for the language of the currently set text and.
Three digits are returned only in the case where a 2 digit code does not exist. If text
isn't empty, set the text to checked.
- Parameters
-
text to be identified
- Returns
- list of the presumed languages of the text, sorted by decreasing confidence. Empty list means it is impossible to determine language with confidence required by setLimits
Definition at line 550 of file guesslanguage.cpp.
◆ setLimits()
void Sonnet::GuessLanguage::setLimits | ( | int | maxItems, |
double | minConfidence ) |
Sets limits to number of languages returned by identify().
The confidence for each language is computed as difference between this and next language on the list normalized to 0-1 range. Reasonable value to get fairly sure result is 0.1 . Default is returning best guess without caring about confidence - exactly as after call to setLimits(1,0).
- Parameters
-
maxItems The list returned by identify() will never have more than maxItems item minConfidence The list will have only enough items for their summary confidence equal or exceed minConfidence.
Definition at line 618 of file guesslanguage.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 4 2024 16:29:33 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.