public class EnglishPluralizer extends RuleBasedPluralizer
Based upon the paper "An Algorithmic Approach to English Pluralization" by Damian Conway at http://www.csse.monash.edu.au/~damian/papers/HTML/Plurals.html .
Original code written by Tom White under the Apache v2 license. Modified by Philip R. Burns for integration into MorphAdorner.
| Modifier and Type | Field and Description |
|---|---|
protected static java.util.Map<java.lang.String,java.lang.String> |
ACCUSATIVE_PRONOUNS |
protected static java.lang.String[] |
CATEGORY_A_AE_RULE |
protected static java.lang.String[] |
CATEGORY_EX_ICES_RULE |
protected static java.lang.String[] |
CATEGORY_IX_ICES_RULE |
protected static java.lang.String[] |
CATEGORY_MAN_MANS_RULE |
protected static java.lang.String[] |
CATEGORY_O_OS_RULE |
protected static java.lang.String[] |
CATEGORY_ON_A_RULE |
protected static java.lang.String[] |
CATEGORY_SINGULAR_S_RULE |
protected static java.lang.String[] |
CATEGORY_UM_A_RULE |
protected static java.lang.String[] |
CATEGORY_UNINFLECTED_NOUNS |
protected static java.lang.String[] |
CATEGORY_US_I_RULE |
protected static java.lang.String[] |
CLASSICAL_A_AE_RULE |
protected static java.lang.String[] |
CLASSICAL_A_ATA_RULE |
protected static java.lang.String[] |
CLASSICAL_EIX_ICES_RULE |
protected static java.lang.String[] |
CLASSICAL_EN_INA_RULE |
protected static java.lang.String[] |
CLASSICAL_O_I_RULE |
protected static java.lang.String[] |
CLASSICAL_ON_A_RULE |
protected static java.lang.String[] |
CLASSICAL_UM_A |
protected static java.lang.String[] |
CLASSICAL_US_I_RULE |
protected static java.lang.String[] |
CLASSICAL_US_US_RULE |
protected static java.util.Map<java.lang.String,java.lang.String> |
IRREGULAR_NOUNS |
protected static java.util.Map<java.lang.String,java.lang.String> |
NOMINATIVE_PRONOUNS |
protected static java.lang.String |
POSTFIX_ADJECTIVE_REGEX |
protected static java.lang.String[] |
PREPOSITIONS |
protected java.util.List<WordRule> |
rules |
fallbackPluralizer, locale, NOOP_PLURALIZER| Constructor and Description |
|---|
EnglishPluralizer()
Create Engish pluralizer.
|
| Modifier and Type | Method and Description |
|---|---|
protected java.lang.String |
postProcess(java.lang.String trimmedWord,
java.lang.String pluralizedWord)
Fix case of pluralized word.
|
getFallbackPluralizer, getLocale, getRules, pluralize, pluralize, pluralizeInternal, setFallbackPluralizer, setLocale, setRulesprotected static final java.lang.String POSTFIX_ADJECTIVE_REGEX
protected static final java.lang.String[] PREPOSITIONS
protected static final java.util.Map<java.lang.String,java.lang.String> NOMINATIVE_PRONOUNS
protected static final java.util.Map<java.lang.String,java.lang.String> ACCUSATIVE_PRONOUNS
protected static final java.util.Map<java.lang.String,java.lang.String> IRREGULAR_NOUNS
protected static final java.lang.String[] CATEGORY_UNINFLECTED_NOUNS
protected static final java.lang.String[] CATEGORY_MAN_MANS_RULE
protected static final java.lang.String[] CATEGORY_EX_ICES_RULE
protected static final java.lang.String[] CATEGORY_IX_ICES_RULE
protected static final java.lang.String[] CATEGORY_UM_A_RULE
protected static final java.lang.String[] CLASSICAL_UM_A
protected static final java.lang.String[] CATEGORY_US_I_RULE
protected static final java.lang.String[] CLASSICAL_US_I_RULE
protected static final java.lang.String[] CLASSICAL_US_US_RULE
protected static final java.lang.String[] CATEGORY_ON_A_RULE
protected static final java.lang.String[] CLASSICAL_ON_A_RULE
protected static final java.lang.String[] CLASSICAL_A_ATA_RULE
protected static final java.lang.String[] CATEGORY_A_AE_RULE
protected static final java.lang.String[] CLASSICAL_A_AE_RULE
protected static final java.lang.String[] CLASSICAL_EN_INA_RULE
protected static final java.lang.String[] CLASSICAL_O_I_RULE
protected static final java.lang.String[] CATEGORY_O_OS_RULE
protected static final java.lang.String[] CATEGORY_SINGULAR_S_RULE
protected static final java.lang.String[] CLASSICAL_EIX_ICES_RULE
protected final java.util.List<WordRule> rules
protected java.lang.String postProcess(java.lang.String trimmedWord,
java.lang.String pluralizedWord)
postProcess in class RuleBasedPluralizertrimmedWord - The input word, with leading and trailing
whitespace removed.pluralizedWord - The pluralized word.pluralizedWord after
processing.
If trimmedWord is all uppercase, then
pluralizedWord is uppercased.
If trimmedWord is titlecase, then
pluralizedWord is titlecased.