Skip to main content

Text parser.

Project description

buildstatus coverage

About

A text parser written in the Python language.

The parser is pretty fast, but not as user friendly as PyParsing and Lark.

Project homepage: https://github.com/eerimoq/textparser

Documentation: http://textparser.readthedocs.org/en/latest

Credits

  • Thanks PyParsing for a user friendly interface. Many of textparser’s class names are taken from this project.

Installation

pip install textparser

Example usage

The Hello World example parses the string Hello, World! and outputs its parse tree ['Hello', ',', 'World', '!'].

The script:

import textparser
from textparser import Sequence


class Parser(textparser.Parser):

    def token_specs(self):
        return [
            ('SKIP',          r'[ \r\n\t]+'),
            ('WORD',          r'\w+'),
            ('EMARK',    '!', r'!'),
            ('COMMA',    ',', r','),
            ('MISMATCH',      r'.')
        ]

    def grammar(self):
        return Sequence('WORD', ',', 'WORD', '!')


tree = Parser().parse('Hello, World!')

print('Tree:', tree)

Script execution:

$ python3 examples/hello_world.py
Tree: ['Hello', ',', 'World', '!']
$

Contributing

  1. Fork the repository.

  2. Install prerequisites.

    pip install -r requirements.txt
  3. Implement the new feature or bug fix.

  4. Implement test case(s) to ensure that future changes do not break legacy.

  5. Run the tests.

    make test
  6. Create a pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

textparser-0.10.0.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

textparser-0.10.0-py2.py3-none-any.whl (6.4 kB view details)

Uploaded Python 2Python 3

File details

Details for the file textparser-0.10.0.tar.gz.

File metadata

  • Download URL: textparser-0.10.0.tar.gz
  • Upload date:
  • Size: 7.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for textparser-0.10.0.tar.gz
Algorithm Hash digest
SHA256 3a393ccf8f7b3f0d4f1225868b5f68bf45ac26a9bf0a1029fda8c19ad0826951
MD5 00daa43662e7131b4a5bc9bd21cb1b66
BLAKE2b-256 5ea5bdf218399eee9fbf975fcd82b9670ef750875ac25f3b5827359405e8cb4f

See more details on using hashes here.

File details

Details for the file textparser-0.10.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for textparser-0.10.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7865663089dd8eaabce6346986994e675d30f642661d53ee86975fd8e5f551ef
MD5 8cc3e3430fce26b773655301129fb69d
BLAKE2b-256 b5029138a3b938c6a39b2b6fb9c3b796dde7fc27ce6bc72da944b3915dd74e94

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page