将汉字转换为带音调或不带音调的拼音
返回值为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"]]
在给的的数据源中的指定属性上进行拼音模糊搜索
支持拼音全拼 首字母 全拼和首字母混合搜索 (支持多音字)
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防火墙
- 重构 搜索算法
- 优化 汉字转拼音的
- 重构 搜索
- 优化 混合字符转拼音,现在会自动以大写字母和部分分隔符分割
- 优化 包含英文的字母的拼音转换
- 新增 泛型搜索类型
- 优化 添加对字典以及KeyValuePair支持
- 优化 权重计算