83 packages tagged with “Match”
F# style discriminated unions for C#, using a custom type OneOf<T0, ... Tn> which holds a single value and has a .Match(...) method on it for exhaustive matching. Simple but powerful.
A fast globbing library for .NET applications, including .net core. Doesn't use Regex.
This source generator automaticly implements OneOfBase hierarchies
This package extends the OneOf types from OneOf<T0, .., T9> to OneOf<T0, .., T32> for when you really have a lot of options
String wildcard match (I can not believe no one already wrote a simple NuGet package to do this).
Implements the Aho-Corasick string search algorithm
ExhaustiveMatching.Analyzer adds exhaustive matching to C# switch statements and expressions. Get compiler errors for missing cases in a switch statement or expression. Mark which switches should have exhaustiveness checking by throwing an exception in the default case. Exhaustiveness checking works not just for enums, but for classes and interfaces. Turn them into discriminated unions (aka sum types) by marking them with the 'Closed' attribute and listing the cases. ExhaustiveMatching.Analyzer goes beyond what other languages support by handling full inheritance hierarchies.
Regular expression matching library.
Simple URL matcher library allowing you to match based on explicit string or parameters
This is an FSharp library for interop with the C# OneOf Types
Library for maintaining a match list of IP addresses and networks and comparing inputs to see if a match exists.
Suppresses exhaustiveness warnings of switch statement and switch expressions when all cases of a "closed type hierarchy" are covered. See project URL for details. It suppresses IDE0010, IDE0072 and CS8509. It is NRT-aware.
Converts regular expression matches to strong types.
Split name into military rank, honorific, first name, middle initial, last name, suffix, gender. Also matches names.
Source generator emitting result types like in F# with your custom error type and Match methods (safe switches) for base types and their derived cases
Funicular-Switch is a lightweight C# port of F# result and option types
Byte array and stream matching library
The Diff Match and Patch libraries offer robust algorithms to perform the operations required for synchronizing plain text. Diff: Compare two blocks of plain text and efficiently return a list of differences. Diff Demo Match: Given a search string, find its best fuzzy match in a block of plain text. Weighted for both accuracy and location. Match Demo Patch: Apply a list of patches onto plain text. Use best-effort to apply patch even when the underlying text doesn't match. Patch Demo Algorithms This library implements Myer's diff algorithm which is generally considered to be the best general-purpose diff. A layer of pre-diff speedups and post-diff cleanups surround the diff algorithm, improving both performance and output quality. This library also implements a Bitap matching algorithm at the heart of a flexible matching and patching strategy.
A simple diff viewer to see differences between 2 bodies of texts
Provides pattern matching for C# using a fuent syntax. It will allow you to use a more functional approach to complex if/else and switch statements.
OneOf Extensions
Provides a simple object model to cope with diffs and patches. The main classes involved are Diff and Patch. Next to those, the static DiffList and PatchList classes provide some static and extension methods on List<Diff> and List<Patch>, respectively.
This is a duplication of MasterCard-Match, but has compatibility to .NET Core.
.Net (C#) Binding for Babel Street Analytics API
TextMatch is a library for searching inside texts using Lucene query expressions. Supports all types of Lucene query expressions - boolean, wildcard, fuzzy. Options are available for tweaking tokenization, such as case-sensitivity and word stemming.
Linear-progressive text discovery engine exposing functionality through simple service APIs. Break plain text into a sequence of slices which can be reconstituted as annotated text. Generate meta-rich tokens from a search expression to then be used to annotate source text matches; noise-word detection, tokenization, and matching options are configurable. Use a common adapter interface with interchangeable DOM libraries (HtmlAgility, AngleSharp, etc.) to do the following: mark search hits in the DOM, create HTML excerpts at a given word count with configurable element-breaking rules, and extract text content with selectively preserved formatting indicators. High degree of extensibility leveraging dependency injection. While regex can be used in advanced configurations, it is not required. See project site for demos.
F# style discriminated unions or C#, using a custom type OneOf<T0, ... Tn> which holds a single value and has a .Match(...) method on it for exhaustive matching. Simple but powerful.
PhoneticMatching C# project.
A flexible and easy to use .NET library that simplifies matching of values as well as filtering.
A simple static library to find the nearest string in a list, and its edit distance, from a supplied string.