Chevrotain is a blazing fast and feature rich Parser Building Toolkit for JavaScript. It can be used to build parsers/compilers/interpreters for various use cases ranging from simple configuration files, to full fledged programing languages. A more in depth description of Chevrotain can be found in this great article on: Parsing in JavaScript: Tools and Libraries.
typescript parser-library parsing grammars tokenizer open-source parser syntax lexical analysis grammar lexer generator compiler fault tolerantPostlight's Mercury Parser extracts the bits that humans care about from any URL you give it. That includes article content, titles, authors, published dates, excerpts, lead images, and more. Mercury Parser powers the Mercury AMP Converter and Mercury Reader, a Chrome extension that removes ads and distractions, leaving only text and images for a beautiful reading view on any site.
rollup jest node parser parser-library mercury-parser mercury reader web contentLark is a parsing toolkit for Python, built with a focus on ergonomics, performance and modularity. Lark can parse all context-free languages. To put it simply, it means that it is capable of parsing almost any programming language out there, and to some degree most natural languages too.
parser tree parse parser-library grammar parsing-engine lark earley lalr parsing-library cykDante is a text parser to easily generate a Spannable from a raw input, right now it supports only HTML but the idea is to be able to support multiple input types (e.g., MarkDown). Originally I authored Dante in Pause, the project is now dead and I decided to open source it.
android html parser-library spannable rich-textBeginners: Lark is not just another parser. It can parse any grammar you throw at it, no matter how complicated or ambiguous, and do so efficiently. It also constructs a parse-tree for you, without additional code on your part. Experts: Lark lets you choose between Earley and LALR(1), to trade-off power and speed. It also contains a CYK parser and experimental features such as a contextual-lexer.
parser parsing-library parser-library parsing-engine earley lalr lark cyk grammar parse treeThis is an industrial-strength monadic parser combinator library. Megaparsec is a feature-rich package that strikes a nice balance between speed, flexibility, and quality of parse errors. The project provides flexible solutions to satisfy common parsing needs. The section describes them shortly. If you're looking for comprehensive documentation, see the section about documentation.
parser-library megaparsec haskellLibrary interface to the C++ AST — parse source files, synthesize entities, get documentation comments and generate code. If you're writing a tool that needs access to the C++ AST (i.e. documentation generator, reflection library, …), your only option apart from writing your own parser is to use clang. It offers three interfaces for tools, but the only one that really works for standalone applications is libclang. However, libclang has various limitations and does not expose the entire AST.
cplusplus ast parser-library libclangParse gdb machine interface string output and return structured data types (Python dicts) that are JSON serializable. Useful for writing the backend to a gdb frontend. For example, gdbgui uses pygdbmi on the backend.Also implements a class to control gdb, GdbController, which allows programmatic control of gdb using Python, which is also useful if creating a front end.
gdb-commands json-serializable gdb-mi parser parser-library frontendThis command line parser library is very much inspired by the argparse library for Python. It's one of the easiest parser libraries I've used while still offering a comprehensive set of powerful features.If you don't need any special options or custom help generators, the static CliParser class is the easiest way to initialize the parser. Behind the scenes it will create the parser and begin parsing the arguments passed in. If the destination type has a parameterless construtor, you don't even need to set up the object first! It can new() up an object for you and spit it out after parsing is complete, ready to be used.
parsed-arguments c-sharp parser-library clipr command-line-parserThe goal of this package is to provide a simple, idiomatic and elegant way of defining parsers in Go.Participle's method of defining grammars should be familiar to any Go programmer who has used the encoding/json package: struct field tags define what and how input is mapped to those same fields. This is not unusual for Go encoders, but is unusual for a parser.
parser lexer grammar ast parser-library parser-framework parser-api ebnf participleA playlist file (*.pls) parser library for Android. Please check the format's Wikipedia page for details. Snapshots of the development version are available in Sonatype's snapshots repository.
android android-library playlist aar-library travis-ci parser parser-library plsD HTML Parser, similar to python BeautifulSoup
parser-library parser html-parser libraryElixir NIF for cmark (C), a parser library following the CommonMark spec. For more information visit http://commonmark.org/.
cmark commonmark markdown nif parser parser-library hexlibpypa is a Python parser implemented in pure C++. It neither uses any tools like flex, yacc, bison etc, nor is it using any parser framework like Boost.Spirit. It's implementation is pure C++ code. I started getting involved into the pyston project where it had an entry in their getting involved list for implementing a parser for Python. Never having properly tackled the problem of creating a parser library for any language, I decided it might be worth a try, since most of the libraries I found, where basically just using the builtin Python parser or where implemented in Python itself.
parse parser-library c-plus-plus ast lexerMibble is an open-source SNMP MIB (or SMI) parser library for Java. It reads MIB files (in ASN.1 syntax) and provides an API to access all the information, including OIDs, types, descriptions, comments and the original MIB source text. Mibble comes bundled with a comprehensive set standard IANA and IETF MIBs, command-line apps for formatting and validation, and a graphical MIB browser with a simple SNMP manager.
snmp parser-library mib-browser mib-validatorThis library is for creating and composing parsers. This creates a parser B that can parse the string "111122222".
parser-combinators parser-generator parsers parser-library📦 Armatis parses the website or web API response of Korean parcel delivery service company for tracking the parcel. Armatis is simple to use. Just need to type the delivery company code and the invoice number.
parcel delivery korea parser-librarySpirit-style PEG-like parsing library for Elixir. Please see ExSpirit.Parser for details about the parser.
elixir elixir-lang elixir-programming-language elixir-library parser parser-combinators parser-libraryThe Kotlin target for ANTLR.
kotlin antlr4 antlr antlr-language-development antlr-tool parser parser-libraryIMPORTANT: This project is in active development and is not yet ready for production. Apachelog is Go package for parsing Apache HTTP logs It requires Go 1.8 or newer to compile.
parser-library apache log apachelog
We have large collection of open source products. Follow the tags from
Tag Cloud >>
Open source products are scattered around the web. Please provide information
about the open source projects you own / you use.
Add Projects.