Skip to content

MakesYT/Pinyin.NET

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pinyin.NET

NuGet NuGet
Pinyin.NET 汉字转换为拼音 拼音模糊搜索

1. 汉字转换为拼音

将汉字转换为带音调或不带音调的拼音
返回值为IEnumerable<IEnumerable>,
每个IEnumerable为一个汉字的拼音,
每个string为一个发音 如果输入的字符不是汉字,则返回值其本身

例如"到底"返回值为[["dao"], ["di","de"]] 例如"Stea mSt2等2待"返回值为[ ["stea"], ["m"], ["st2"], ["deng"],["2"], ["dai"]]

PinyinProcessor pinyinProcessor = new PinyinProcessor();
//PinyinProcessor pinyinProcessor = new PinyinProcessor(PinyinFormat.WithToneMark); //带音调
pinyinProcessor.GetPinyin("到底");//[["dao"], ["di","de"]]
pinyinProcessor.GetPinyin("到底",true);//[["到"],["底"],["dao"], ["di","de"]]

2. 拼音模糊搜索

在给的的数据源中的指定属性上进行拼音模糊搜索
支持拼音全拼 首字母 全拼和首字母混合搜索 (支持多音字)

 list.Add(new MyClass
        {
            Name = "高级安全WindowsDefender防火墙",
            Pinyin = pinyinProcessor.GetPinyin("高级安全WindowsDefender防火墙",true)});
 PinyinSearcher<MyClass> pinyinSearcher = new PinyinSearcher<MyClass>(list, "Pinyin");
 var search = pinyinSearcher.Search("anqwin");
foreach (var searchResult in search)
{
    Console.WriteLine($" {searchResult.Weight}  {searchResult.Source.Name}");
}
//输出 1  高级安全WindowsDefender防火墙

更新日志

1.1.0

  1. 重构 搜索算法
  2. 优化 汉字转拼音的

1.0.3

  1. 重构 搜索

1.0.2

  1. 优化 混合字符转拼音,现在会自动以大写字母和部分分隔符分割

1.0.1

  1. 优化 包含英文的字母的拼音转换
  2. 新增 泛型搜索类型
  3. 优化 添加对字典以及KeyValuePair支持
  4. 优化 权重计算

Releases

No releases published

Packages

No packages published

Languages