VariableKeywordMatcher.Provider.ChineseZhCnPinYin 1.0.5

VariableKeywordMatcher.Provider.JapaneseRomaji is the Chinese PinYin matcher for VariableKeywordMatcher.
e.g. "nihao" will hit "你好".

Install-Package VariableKeywordMatcher.Provider.ChineseZhCnPinYin -Version 1.0.5
dotnet add package VariableKeywordMatcher.Provider.ChineseZhCnPinYin --version 1.0.5
<PackageReference Include="VariableKeywordMatcher.Provider.ChineseZhCnPinYin" Version="1.0.5" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add VariableKeywordMatcher.Provider.ChineseZhCnPinYin --version 1.0.5
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: VariableKeywordMatcher.Provider.ChineseZhCnPinYin, 1.0.5"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install VariableKeywordMatcher.Provider.ChineseZhCnPinYin as a Cake Addin
#addin nuget:?package=VariableKeywordMatcher.Provider.ChineseZhCnPinYin&version=1.0.5

// Install VariableKeywordMatcher.Provider.ChineseZhCnPinYin as a Cake Tool
#tool nuget:?package=VariableKeywordMatcher.Provider.ChineseZhCnPinYin&version=1.0.5
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Variable-Keyword-Matcher

VariableKeywordMatcher is a C# lib for:

  • English initials matching
  • English discrete matching
  • Chinese PinYin matching
  • Japanese Romajin matching
  • highlight multiple keywords in search
  • pluggable for more spell matching for future. (e.g. Tongyong Pinyin, Korean Hangul ... )

Usage

Install

Install from nuget:

VariableKeywordMatcher (optional)MatcherProvider: ChineseZhCnPinYin (optional)MatcherProvider: ChineseZhCnPinYinInitials (optional)MatcherProvider: JapaneseRomaji

QuickStart

  1. Get the names of available matchers
var availableProviderNames = VariableKeywordMatcher.Builder.GetAvailableProviderNames().ToList();
  1. Make a list of which providers you want to use.
var enabledProviderNames = new ist<string>();
enabledProviderNames.AddavailableProviderNames[0]);
enabledProviderNames.AddavailableProviderNames[1]);
  1. Create the matcher(case sensitive = false)
var matcher = VariableKeywordMatcher.Builder.Build(enabledProviderNames);
  1. Build cache for original strings
var matchCache = matcher.CreateStringCache("Hello World");
  1. Match with the keywords
var result = matcher.Match(matchCache, new List<string>() { "he", "wo" });
  1. print result
if (result.IsMatchAllKeywords == true)
{
    // print where should be high-light
    for (int i = 0; i < result.HitFlags.Count; i++)
    {
        if (result.HitFlags[i] == true)
        {
            // highlight
            Console.Write($"[{result.OriginalString[i]}]");
        }
        else
        {
            // normal
            Console.Write($"{result.OriginalString[i]}");
        }
        Console.WriteLine();
    }
}
else
{
    Console.WriteLine("Not matched");
    for (int i = 0; i < result.KeywordsMatchedFlags.Count; i++)
    {
        if (result.KeywordsMatchedFlags[i] == false)
        {
            Console.WriteLine($"{result.Keywords[i]} was not matched");
        }
    }
}

Included Components

Variable-Keyword-Matcher

VariableKeywordMatcher is a C# lib for:

  • English initials matching
  • English discrete matching
  • Chinese PinYin matching
  • Japanese Romajin matching
  • highlight multiple keywords in search
  • pluggable for more spell matching for future. (e.g. Tongyong Pinyin, Korean Hangul ... )

Usage

Install

Install from nuget:

VariableKeywordMatcher (optional)MatcherProvider: ChineseZhCnPinYin (optional)MatcherProvider: ChineseZhCnPinYinInitials (optional)MatcherProvider: JapaneseRomaji

QuickStart

  1. Get the names of available matchers
var availableProviderNames = VariableKeywordMatcher.Builder.GetAvailableProviderNames().ToList();
  1. Make a list of which providers you want to use.
var enabledProviderNames = new ist<string>();
enabledProviderNames.AddavailableProviderNames[0]);
enabledProviderNames.AddavailableProviderNames[1]);
  1. Create the matcher(case sensitive = false)
var matcher = VariableKeywordMatcher.Builder.Build(enabledProviderNames);
  1. Build cache for original strings
var matchCache = matcher.CreateStringCache("Hello World");
  1. Match with the keywords
var result = matcher.Match(matchCache, new List<string>() { "he", "wo" });
  1. print result
if (result.IsMatchAllKeywords == true)
{
    // print where should be high-light
    for (int i = 0; i < result.HitFlags.Count; i++)
    {
        if (result.HitFlags[i] == true)
        {
            // highlight
            Console.Write($"[{result.OriginalString[i]}]");
        }
        else
        {
            // normal
            Console.Write($"{result.OriginalString[i]}");
        }
        Console.WriteLine();
    }
}
else
{
    Console.WriteLine("Not matched");
    for (int i = 0; i < result.KeywordsMatchedFlags.Count; i++)
    {
        if (result.KeywordsMatchedFlags[i] == false)
        {
            Console.WriteLine($"{result.Keywords[i]} was not matched");
        }
    }
}

Included Components

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on VariableKeywordMatcher.Provider.ChineseZhCnPinYin:

Repository Stars
VShawn/PRemoteM
Personal Remote Manager

Version History

Version Downloads Last updated
1.0.5 273 3/16/2021