18 packages tagged with “pattern-matching”
This is a powerful, yet simple, URL path pattern parser and matcher
An implementation of a discriminated union data structure with pattern matching support.
Provides a pattern matching mechanism for C#.
High-performance regex engine supporting intersection and complement operations
A library which enables more powerful pattern matching than is currently available in the switch statement/expression
The library allows you to match a URL to a pattern. How it works - we break the url pattern into parts And we match each non-empty part with a similar one from the URL. You can specify Wildcard: * or ~ Where * is any character set within the group (schema, host, port, path, parameter, anchor) Where ~ any character set within a group segment (host, path) Only supply parts of the URL you care about. Parts left out will match anything. E.g. if you don’t care about the host, then leave it out.
Functional programming library for C#
Lightweight result types for explicit success/failure handling in .NET applications.
Roslyn analyzer that enforces exhaustive pattern matching for closed type hierarchies in C#
High-performance functional Result types for .NET with explicit error handling. Features: Railway Oriented Programming, exhaustive pattern matching, Result with multiple specific error types (Result<TSuccess, TError1, TError2, ...>), source-generated semantic Match extensions, and TryGetError<T> for type-based error handling. No exceptions, zero allocations.
A fluent pattern matching library for .NET that provides powerful matchers for values, collections, and dictionaries. Includes automatic pattern generation via source generators for record types.
Package Description
A lightweight C# library for rule-based pattern matching with support for fuzzy matching and priority-based rule selection..
A lightweight C# library for rule-based pattern matching with support for fuzzy matching and priority-based rule selection with flecs method extensions
A token-based pattern matching and visitor framework for C#, inspired by Babel's AST traversal. Designed for transforming TSX/JSX to C# or other source-to-source transformations.
A lightweight, simple, extensible, and type-safe Result monad for C#/.NET, supporting functional error handling, monadic chaining, and pattern matching. Use this small package, that you can easily understand yourself, to help enable Functional practices in your C# project.
A comprehensive .NET library for correcting OCR errors in English text with ~837 battle-tested patterns. Specifically designed for Tesseract PGS subtitle extraction, achieving 100% success rate on tested corpus. Handles capital I/lowercase l confusion, spacing errors, apostrophe issues, and number/letter confusion. Zero false positives, modular architecture, multi-pass processing.
Functional programming library for .NET with Option, Result, Either, Validation, Try, RemoteData, NonEmptyList, Writer, Reader, State, and IO monads. Features async/await support with CancellationToken, LINQ query syntax, zero dependencies, Roslyn analyzers, source generators for discriminated unions, ASP.NET Core and EF Core integrations.