Parsing

Utility libraries for writing or generating parsers for any file format.

Newest releases
68

deadpixi The Ergex Regular Expression Library Introduction Ergex is a regular expression library that does a few things rather differently from many other libr
 

knarkzel vom vom is a rewrite of nom, which is a parser combinator library. It is written in V, hence the name. Why use vom? The parsers are small and easy to
 

dtolnay Parser for CARGO_ENCODED_RUSTFLAGS CARGO_ENCODED_RUSTFLAGS is one of the environment variables provided by Cargo to build scripts. It synthesizes seve
 
57

eatonphil lust: Lua in Rust This project implements a parser, compiler, and virtual machine evaluator for a minimal subset of Lua. It is written from scratch in
 

peacecwz tck_no Turkish Citizenship ID Validator and Generator Library for Rust API Docs | Releases Installation With cargo add installed run: $ cargo add tck_
 
224

benkay86 Nom Tutorial Nom is a wonderful parser combinators library written in Rust. It can handle binary and text files. Consider it where you would otherwise
 
25

dtolnay Conditional compilation expressions Conditional compilation using boolean expression syntax, rather than any(), all(), not(). [dependencies] efg = "0.
 
26

untitaker html5gum html5gum is a WHATWG-compliant HTML tokenizer. use std::fmt::Write; use html5gum::{Tokenizer, Token}; let html = "<title >hello world</tit
 

r7kamura fronma Front Matter parser for Rust. Usage Add this crate as a dependency: [dependencies] fronma = "~0.1" then use fronma::parser::parse to parse text
 

QodotPlugin Shalrath   A rusty, spiky, heat-seeking quake map parser shalrath is a rust representation, [nom] parser and string serializer for Quake map files. It
 
121

Owez argi Argument parsing for the future 🚀 Features Macro-based approach, providing an intuitive way to layout a cli Rich auto-help generation, styling b
 
14

1password password-rules-parser Rust parser for the HTML passwordrules attribute, a proposal for an HTML attribute that allows services to specify their passwor
 
27

popzxc trait-set: trait aliases on stable Rust Status: Project info: Support for trait aliases on stable Rust. Description This crate provide support for tra
 
17

bluecatengineering dhcproto A DHCP parser and encoder for DHCPv4/DHCPv6. dhcproto aims to be a functionally complete DHCP implementation. Many common option types are im
 
24

denoland deno_ast Source text parsing, lexing, and AST related functionality for Deno. use deno::ast::MediaType; use deno::ast::parse_module; use deno::ast::Pa
 
17

naomijub PIX BR Code Parser for Rust
 
46

agnipau slap (shell clap) - painless argument parsing.
 
66

rust-bakery PEG Grammars for Nom nom-peg is a PEG (Parsing Expression Grammar) parser generator built on top of nom, using a syntax that is heavily inspired by LA
 
87

marwes combine-language This a crate providing an easy way of constructing parsers which can easily parse various programming languages. It has much of the s
 
17

rust-bakery nom-trace This crate provides a way to trace a parser execution, storing positions in the input data, positions in the parser tree and parser results.
 
16

nikomatsakis Rusty PEG is a set of macros and library code designed to make it very easy to write parsers in Rust. The name derives from the fact that the libary i
 
13

alfanick xxcalc-rs An embeddable or a standalone robust floating-point polynomial calculator written in Rust. This project is a Rust crate (library) which prov
 
46

dansimon #Peruse Documentation Peruse is a small parser-combinator library for rust. The goal is to be able to write clean, efficient parsers powerful enough t
 
71

asajeffrey Parsell: an LL(1) streaming parser combinator library for Rust The goal of this library is to provide parser combinators that: are optimized for LL(1)
 
1.2k

Marwes combine An implementation of parser combinators for Rust, inspired by the Haskell library Parsec. As in Parsec the parsers are LL(1) by default but th
 
389

goffrie plex, a parser and lexer generator This crate provides a couple syntax extensions: lexer!, which creates a DFA-based lexer that uses maximal munch. It
 
357

rrevenantt antlr4rust ANTLR4 runtime for Rust programming language Tool(generator) part is currently located in rust-target branch of my antlr4 fork rrevenantt/a
 
107

porglezomp Bitmatch The bitmatch crate provides tools for packing and unpacking integers as sequences of bits. Supports #![no_std]. Examples Using #[bitmatch] wi
 
22

saschagrunert peel Dynamic parsing within trees 🌲 🌳 🌴 Target of this library is to provide a flexible approach in parsing data. This will mainly be done within a
 
24

danielkeep scan-rules This crate provides some macros for quickly parsing values out of text. Roughly speaking, it does the inverse of the print!/format! macros;
 
31

intrepidpig MEXPRP A math expression parsing and evaluation library for Rust API docs here. Also see the examples/ directory. Motivation The main reason I wrote M
 
23

hukumka reformation Parsing via regular expressions using format syntax Derive will require attribute reformation to specify format string, which will be trea