|
- Metadata-Version: 2.1
- Name: pyparsing
- Version: 2.4.7
- Summary: Python parsing module
- Home-page: https://github.com/pyparsing/pyparsing/
- Author: Paul McGuire
- Author-email: ptmcg@users.sourceforge.net
- License: MIT License
- Download-URL: https://pypi.org/project/pyparsing/
- Platform: UNKNOWN
- Classifier: Development Status :: 5 - Production/Stable
- Classifier: Intended Audience :: Developers
- Classifier: Intended Audience :: Information Technology
- Classifier: License :: OSI Approved :: MIT License
- Classifier: Operating System :: OS Independent
- Classifier: Programming Language :: Python
- Classifier: Programming Language :: Python :: 2
- Classifier: Programming Language :: Python :: 2.6
- Classifier: Programming Language :: Python :: 2.7
- Classifier: Programming Language :: Python :: 3
- Classifier: Programming Language :: Python :: 3.3
- Classifier: Programming Language :: Python :: 3.4
- Classifier: Programming Language :: Python :: 3.5
- Classifier: Programming Language :: Python :: 3.6
- Classifier: Programming Language :: Python :: 3.7
- Classifier: Programming Language :: Python :: 3.8
- Requires-Python: >=2.6, !=3.0.*, !=3.1.*, !=3.2.*
-
- PyParsing -- A Python Parsing Module
- ====================================
-
- |Build Status|
-
- Introduction
- ============
-
- The pyparsing module is an alternative approach to creating and
- executing simple grammars, vs. the traditional lex/yacc approach, or the
- use of regular expressions. The pyparsing module provides a library of
- classes that client code uses to construct the grammar directly in
- Python code.
-
- *[Since first writing this description of pyparsing in late 2003, this
- technique for developing parsers has become more widespread, under the
- name Parsing Expression Grammars - PEGs. See more information on PEGs at*
- https://en.wikipedia.org/wiki/Parsing_expression_grammar *.]*
-
- Here is a program to parse ``"Hello, World!"`` (or any greeting of the form
- ``"salutation, addressee!"``):
-
- .. code:: python
-
- from pyparsing import Word, alphas
- greet = Word(alphas) + "," + Word(alphas) + "!"
- hello = "Hello, World!"
- print(hello, "->", greet.parseString(hello))
-
- The program outputs the following::
-
- Hello, World! -> ['Hello', ',', 'World', '!']
-
- The Python representation of the grammar is quite readable, owing to the
- self-explanatory class names, and the use of '+', '|' and '^' operator
- definitions.
-
- The parsed results returned from ``parseString()`` can be accessed as a
- nested list, a dictionary, or an object with named attributes.
-
- The pyparsing module handles some of the problems that are typically
- vexing when writing text parsers:
-
- - extra or missing whitespace (the above program will also handle ``"Hello,World!"``, ``"Hello , World !"``, etc.)
- - quoted strings
- - embedded comments
-
- The examples directory includes a simple SQL parser, simple CORBA IDL
- parser, a config file parser, a chemical formula parser, and a four-
- function algebraic notation parser, among many others.
-
- Documentation
- =============
-
- There are many examples in the online docstrings of the classes
- and methods in pyparsing. You can find them compiled into online docs
- at https://pyparsing-docs.readthedocs.io/en/latest/. Additional
- documentation resources and project info are listed in the online
- GitHub wiki, at https://github.com/pyparsing/pyparsing/wiki. An
- entire directory of examples is at
- https://github.com/pyparsing/pyparsing/tree/master/examples.
-
- License
- =======
-
- MIT License. See header of pyparsing.py
-
- History
- =======
-
- See CHANGES file.
-
- .. |Build Status| image:: https://travis-ci.org/pyparsing/pyparsing.svg?branch=master
- :target: https://travis-ci.org/pyparsing/pyparsing
-
|