Class AvsAnRule


  • public class AvsAnRule
    extends org.languagetool.rules.Rule
    Check if the determiner (if any) preceding a word is:
    • an if the next word starts with a vowel
    • a if the next word does not start with a vowel
    This rule loads some exceptions from external files det_a.txt and det_an.txt (e.g. for an hour).
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      (package private) static class  AvsAnRule.Determiner  
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static java.util.regex.Pattern cleanupPattern  
      • Fields inherited from class org.languagetool.rules.Rule

        messages
    • Constructor Summary

      Constructors 
      Constructor Description
      AvsAnRule​(java.util.ResourceBundle messages)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int estimateContextForSureMatch()  
      (package private) AvsAnRule.Determiner getCorrectDeterminerFor​(org.languagetool.AnalyzedTokenReadings token)  
      java.lang.String getDescription()  
      java.lang.String getId()  
      private boolean isVowel​(char c)  
      org.languagetool.rules.RuleMatch[] match​(org.languagetool.AnalyzedSentence sentence)  
      java.lang.String suggestAorAn​(java.lang.String origWord)
      Adds "a" or "an" to the English noun.
      • Methods inherited from class org.languagetool.rules.Rule

        addExamplePair, getAntiPatterns, getCategory, getConfigureText, getCorrectExamples, getDefaultValue, getErrorTriggeringExamples, getIncorrectExamples, getLocQualityIssueType, getMaxConfigurableValue, getMinConfigurableValue, getSentenceWithImmunization, getUrl, hasConfigurableValue, isDefaultOff, isDefaultTempOff, isDictionaryBasedSpellingRule, isOfficeDefaultOff, isOfficeDefaultOn, makeAntiPatterns, setCategory, setCorrectExamples, setDefaultOff, setDefaultOn, setDefaultTempOff, setErrorTriggeringExamples, setIncorrectExamples, setLocQualityIssueType, setOfficeDefaultOff, setOfficeDefaultOn, setUrl, supportsLanguage, toRuleMatchArray, useInOffice
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • cleanupPattern

        private static final java.util.regex.Pattern cleanupPattern
    • Constructor Detail

      • AvsAnRule

        public AvsAnRule​(java.util.ResourceBundle messages)
    • Method Detail

      • getId

        public java.lang.String getId()
        Specified by:
        getId in class org.languagetool.rules.Rule
      • getDescription

        public java.lang.String getDescription()
        Specified by:
        getDescription in class org.languagetool.rules.Rule
      • estimateContextForSureMatch

        public int estimateContextForSureMatch()
        Overrides:
        estimateContextForSureMatch in class org.languagetool.rules.Rule
      • match

        public org.languagetool.rules.RuleMatch[] match​(org.languagetool.AnalyzedSentence sentence)
        Specified by:
        match in class org.languagetool.rules.Rule
      • suggestAorAn

        public java.lang.String suggestAorAn​(java.lang.String origWord)
        Adds "a" or "an" to the English noun. Used for suggesting the proper form of the indefinite article. For the rare cases where both "a" and "an" are considered okay (e.g. for "historical"), "a" is returned.
        Parameters:
        origWord - Word that needs an article.
        Returns:
        String containing the word with a determiner, or just the word if the word is an abbreviation.
      • getCorrectDeterminerFor

        AvsAnRule.Determiner getCorrectDeterminerFor​(org.languagetool.AnalyzedTokenReadings token)
      • isVowel

        private boolean isVowel​(char c)