public class NameDecomposition
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private java.util.List<java.util.Map<java.lang.String,java.lang.String>> |
_decomposedTerms |
private java.lang.String |
_inputName |
private boolean |
_matched |
private static char |
_REPLACEMENT_CHAR |
private static java.lang.String |
UNKNOWN_VALUE |
Constructor and Description |
---|
NameDecomposition(java.lang.String inputName,
java.util.Map<java.lang.String,java.lang.String> sortedAbbrTerms)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
static java.util.Map<java.lang.String,java.lang.String> |
createTerm(java.lang.String term,
java.lang.String desc)
Returns term with known description.
|
static java.util.Map<java.lang.String,java.lang.String> |
createUnknownTerm(java.lang.String term)
Returns term with unknown description.
|
private static void |
extractUnrecognisedTerms(java.lang.String toCheck,
java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.String>> collector)
We parse the remaining, unrecognised characters and fill the collector; we don't use regex
because we need the startIdx (for sorting according to the position in the original string).
|
java.util.List<java.util.Map<java.lang.String,java.lang.String>> |
getDecomposedTerms() |
java.lang.String |
getInputName() |
boolean |
isMatched() |
static boolean |
isUnknown(java.util.Map<java.lang.String,java.lang.String> termAndDesc)
Returns true if the description part in
termAndDesc is not known. |
private boolean |
matchesAbbreviatedTerms(java.util.Map<java.lang.String,java.lang.String> sortedTerms)
Returns whether
_inputName is the concatenation of keys from
sortedTerms , and collects the matched key/value pairs in
_decomposedTerms . |
private static java.lang.String |
matchHappyPath(java.lang.String toCheck,
java.util.Map<java.lang.String,java.lang.String> sortedTerms,
java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.String>> collector)
Returns string where the terms that have been matched are replaced with
_REPLACEMENT_CHAR , and the collector is filled with matched terms sorted per
position in the toCheck . |
java.lang.String |
toString() |
private static final java.lang.String UNKNOWN_VALUE
private static final char _REPLACEMENT_CHAR
private final java.lang.String _inputName
private final java.util.List<java.util.Map<java.lang.String,java.lang.String>> _decomposedTerms
private final boolean _matched
public NameDecomposition(java.lang.String inputName, java.util.Map<java.lang.String,java.lang.String> sortedAbbrTerms)
public static boolean isUnknown(java.util.Map<java.lang.String,java.lang.String> termAndDesc)
termAndDesc
is not known.public static java.util.Map<java.lang.String,java.lang.String> createUnknownTerm(java.lang.String term)
public static java.util.Map<java.lang.String,java.lang.String> createTerm(java.lang.String term, java.lang.String desc)
private boolean matchesAbbreviatedTerms(java.util.Map<java.lang.String,java.lang.String> sortedTerms)
_inputName
is the concatenation of keys from
sortedTerms
, and collects the matched key/value pairs in
_decomposedTerms
.sortedTerms
- non-empty map of sorted terms to check against (terms are keys).private static java.lang.String matchHappyPath(java.lang.String toCheck, java.util.Map<java.lang.String,java.lang.String> sortedTerms, java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.String>> collector)
_REPLACEMENT_CHAR
, and the collector is filled with matched terms sorted per
position in the toCheck
.private static void extractUnrecognisedTerms(java.lang.String toCheck, java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.String>> collector)
public java.lang.String getInputName()
public java.util.List<java.util.Map<java.lang.String,java.lang.String>> getDecomposedTerms()
public boolean isMatched()
public java.lang.String toString()
toString
in class java.lang.Object
Copyright 2009-2015 Tatjana (Tanja) Kostic