RCParsing
The ultimate .NET parsing framework for language development and data scraping
Fluent BNF-like API
Define complex grammars with elegant C# syntax that reads like clean BNF notation.
Declarative Grammar
Write parsers that look like formal grammar specifications
Rich Built-in Toolset
30+ of parser element types, including regex, identifiers, keywords, numbers, escaped strings, separated lists and more
Hybrid Transformation
Combine lazy AST and immediate evaluations within a single parser
Barrier Tokens for Indentation
Parse Python, YAML, and other indent-sensitive languages with built-in INDENT/DEDENT support.
Automatic Indent Detection Built-in tokenizers handle indentation changes automaticallyPython-like Languages Perfect for languages with significant whitespaceNo Manual Tracking No need to manually track indentation levels
Incremental Parsing
Edit large documents with instant feedback using persistent AST and efficient re-parsing.
Persistent AST
AST maintains structure between edits for optimal performance
LSP Ready
Perfect for Language Server Protocol implementations
Real-time Editing
Instant feedback for editors and IDEs
Superior Debugging Experience
Get detailed error messages with stack traces, walk traces, and precise source locations.
Rule Stack Traces See exactly which rules failed during parsingWalk Traces Detailed step-by-step parsing execution logsPrecise Error Locations Line and column information for quick debugging
Blazing Fast Performance
Outperforms popular .NET parsing libraries with optimized modes and efficient memory usage.
Benchmark Proven
Faster than Parlot, Pidgin, ANTLR, and Superpower
Multiple Optimization Modes
Choose between default, optimized, and token-combination modes
Memory Efficient
Excellent allocation patterns and lazy evaluation
Lexerless Architecture
Parse directly from raw text without token priority headaches or separate lexer phase.
No Token Conflicts Avoid lexer token priority issues common in traditional parsersEmbedded Keywords Handle keywords inside strings and complex contexts seamlesslyDynamic Token Matching Tokens are lightweight matching primitives, not rigid phases
Advanced Pattern Matching
Find all occurrences of complex patterns in text with detailed AST information.
FindAllMatches Method
Extract all pattern occurrences from any text
Complex Pattern Support
Match sophisticated structures beyond regex capabilities
Transformation Integration
Apply transformations to matched patterns automatically
Error Recovery Strategies
Define custom recovery strategies per rule to handle syntax errors gracefully.
Custom Recovery Define how each rule should recover from errorsMultiple Error Handling Continue parsing after encountering errorsProduction Ready Robust error handling for real-world usage
Batteries Included
Comprehensive built-in tokens and rules for common parsing scenarios.
Common Tokens
Numbers, keywords, identifiers, escaped strings and custom tokens
Collection Helpers
Separated lists, zero-or-more, one-or-more patterns
Text Processing
Escaped text, quoted strings, custom delimiters
Broad Compatibility
Runs on .NET Standard 2.0+, .NET Framework 4.6.1+, .NET 6.0, and .NET 8.0.
.NET Standard 2.0 Maximum compatibility across .NET ecosystemsLegacy Support Works with older .NET Framework versionsModern Runtimes Optimized for .NET 6+ and future versions