[frames] | no frames]

[ Module Hierarchy | Class Hierarchy ]

# Class Hierarchy

- object: The most base type
  - exceptions.BaseException: Common base class for all exceptions
    - exceptions.Exception: Common base class for all non-exit exceptions.
      - pyparsing.ParseBaseException: base exception class for all parsing runtime exceptions
        - pyparsing.ParseException: Exception thrown when parse expressions don't match class; supported attributes by name are:
        - pyparsing.ParseFatalException: user-throwable exception thrown when inconsistent parse content is found; stops all parsing immediately
          - pyparsing.ParseSyntaxException: just like `ParseFatalException`, but thrown internally when an `ErrorStop` ('-' operator) indicates that parsing is to stop immediately because an unbacktrackable syntax error has been found
      - pyparsing.RecursiveGrammarException: exception thrown by `validate()` if the grammar could be improperly recursive
  - pyparsing.OnlyOnce: Wrapper for parse actions, to ensure they are only called once.
  - pyparsing.ParseResults: Structured parse results, to provide multiple means of access to the parsed data:
  - pyparsing.ParserElement: Abstract base level parser element class.
    - pyparsing.ParseElementEnhance: Abstract subclass of `ParserElement`, for combining and post-processing parsed tokens.
      - pyparsing.FollowedBy: Lookahead matching of the given parse expression.
      - pyparsing.Forward: Forward declaration of an expression to be defined later - used for recursive grammars, such as algebraic infix notation.
      - pyparsing.NotAny: Lookahead to disallow matching with the given parse expression.
      - pyparsing.OneOrMore: Repetition of one or more of the given expression.
        - pyparsing.ZeroOrMore: Optional repetition of zero or more of the given expression.
      - pyparsing.Optional: Optional matching of the given expression.
      - pyparsing.SkipTo: Token for skipping over all undefined text until the matched expression is found.
      - pyparsing.TokenConverter: Abstract subclass of `ParseExpression`, for converting parsed results.
        - pyparsing.Combine: Converter to concatenate all matching tokens to a single string.
        - pyparsing.Dict: Converter to return a repetitive expression as a list, but also as a dictionary.
        - pyparsing.Group: Converter to return the matched tokens as a list - useful for returning tokens of `ZeroOrMore` and `OneOrMore` expressions.
        - pyparsing.Suppress: Converter for ignoring the results of a parsed expression.
    - pyparsing.ParseExpression: Abstract subclass of ParserElement, for combining and post-processing parsed tokens.
      - pyparsing.And: Requires all given `ParseExpression`s to be found in the given order.
      - pyparsing.Each: Requires all given `ParseExpression`s to be found, but in any order.
      - pyparsing.MatchFirst: Requires that at least one `ParseExpression` is found.
      - pyparsing.Or: Requires that at least one `ParseExpression` is found.
    - pyparsing.Token: Abstract `ParserElement` subclass, for defining atomic matching patterns.
      - pyparsing.CharsNotIn: Token for matching words composed of characters *not* in a given set (will include whitespace in matched characters if not listed in the provided exclusion set - see example).
      - pyparsing.Empty: An empty token, will always match.
      - pyparsing.Keyword: Token to exactly match a specified string as a keyword, that is, it must be immediately followed by a non-keyword character.
        - pyparsing.CaselessKeyword: Caseless version of Keyword.
      - pyparsing.Literal: Token to exactly match a specified string.
        - pyparsing.CaselessLiteral: Token to match a specified string, ignoring case of letters.
      - pyparsing.NoMatch: A token that will never match.
      - pyparsing.QuotedString: Token for matching strings that are delimited by quoting characters.
      - pyparsing.Regex: Token for matching strings that match a given regular expression.
      - pyparsing.White: Special matching class for matching whitespace.
      - pyparsing.Word: Token for matching words composed of allowed character sets.
      - pyparsing._PositionToken
        - pyparsing.GoToColumn: Token to advance to a specific column of input text; useful for tabular report scraping.
        - pyparsing.LineEnd: Matches if current position is at the end of a line within the parse string
        - pyparsing.LineStart: Matches if current position is at the beginning of a line within the parse string
        - pyparsing.StringEnd: Matches if current position is at the end of the parse string
        - pyparsing.StringStart: Matches if current position is at the beginning of the parse string
        - pyparsing.WordEnd: Matches if the current position is at the end of a Word, and is not followed by any character in a given set of `wordChars` (default=`printables`).
        - pyparsing.WordStart: Matches if the current position is at the beginning of a Word, and is not preceded by any character in a given set of `wordChars` (default=`printables`).
  - pyparsing.Regex.compiledREtype: Compiled regular expression objects
- pyparsing.pyparsing_common: Here are some common low-level expressions that may be useful in jump-starting parser development: