Displaying 1 to 20 from 24 results

chevrotain - Parser Building Toolkit for JavaScript

  •    TypeScript

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.

mercury-parser - 📜 Extract meaningful content from the chaos of a web page

  •    Javascript

Postlight'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.

dante - A sane rich text parsing and styling library.

  •    Java

Dante 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.

lark - A modern parsing library for Python, implementing Earley & LALR(1) and an easy interface

  •    Python

Beginners: 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.




megaparsec - Industrial-strength monadic parser combinator library

  •    Haskell

This 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.

cppast - Library to parse and work with the C++ AST

  •    C++

Library 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.

pygdbmi - Parse gdb machine interface (mi) string output and return structured data types (Python dicts) that are JSON serializable

  •    Python

Parse 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.

clipr - Command Line Interface ParseR for .Net

  •    CSharp

This 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.


participle - A parser library for Go

  •    Go

The 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.

android-pls-parser - A playlist file (*.pls) parser library for Android

  •    Java

A 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.

cmark

  •    C

Elixir NIF for cmark (C), a parser library following the CommonMark spec. For more information visit http://commonmark.org/.

libpypa - libpypa is a Python parser implemented in pure C++

  •    C++

libpypa 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.

mibble - Mibble is an open-source SNMP MIB parser library for Java.

  •    Java

Mibble 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.

leftry - Leftry - A left-recursion enabled recursive-descent parser combinator library for Lua.

  •    Lua

This library is for creating and composing parsers. This creates a parser B that can parse the string "111122222".

armatis - :package: Armatis parses the website or web API response of Korean parcel delivery service company for tracking the parcel

  •    Python

📦 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.

ex_spirit

  •    Elixir

Spirit-style PEG-like parsing library for Elixir. Please see ExSpirit.Parser for details about the parser.

go-apachelog - Go package for parsing Apache logs.

  •    Go

IMPORTANT: 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.