准备:

微软官方出了一个专用的汉字转拼音包Microsoft Visual Studio International Pack 1.0 SR1

首先到官网http://www.microsoft.com/zh-cn/download/details.aspx?id=15251下载安装包,下载完后解压vsintlpack1,里面有7个安装包,只需安装CHSPinYinConv(跟拼音相关)和CHTCHSConv(简体和繁体间的转换)这两个包就可以了,安装完毕后,需要在VS里添加引用。

将C:\Program Files\Microsoft Visual Studio International Pack\Simplified Chinese Pin-Yin Conversion Library 和C:\Program Files\Microsoft Visual Studio International Pack\Traditional Chinese to Simplified Chinese Conversion Library and Add-In Tool下的dll  拷贝到项目的dll文件夹下(我的是Reference),接下来添加引用

Code:

using Microsoft.International.Converters.PinYinConverter;

#region==模糊搜索==

private void MistinessSel()

{

string selwords = GetFormString("words");

if (selwords != "")

{

//判断是汉字还是字母

string pattern = @"^[A-Za-z]+$";

Regex regex = new Regex(pattern);

List list = null;

List categorylist = new List();

//字母模糊搜索

if (regex.IsMatch(selwords))

{

selwords = selwords.ToLower();

list = new BLL.t_category().GetModelList(" ParentID!=0 ");

//拼音模糊查询法

for (int i = 0; i < list.Count; i++)

{

//StringBuilder str = new StringBuilder();//定义一个可变长度的字符串

//char[] chs; //定义一个字符数组来接收每个汉字的拼音

string spells = "";

//遍历F_ConnName字段中所有汉字

foreach (char c in list[i].Name.ToCharArray())

{

//验证该汉字是否合法

if (ChineseChar.IsValidChar(c))

{

ChineseChar CC = new ChineseChar(c);

//将该汉字转化为拼音集合

ReadOnlyCollection roc = CC.Pinyins;

//获取集合中第一个数据即为该汉字的拼音

spells += roc[0].ToLower();

}

}

if (spells.Contains(selwords))

{

categorylist.Add(list[i]);

}

}

}

else

{

categorylist = new BLL.t_category().GetModelList(" ParentID!=0 and Name  LIKE '%" + selwords + "%'"); ;

}

ResponseText(Newtonsoft.Json.JsonConvert.SerializeObject(new { res = 1, list = categorylist }));

}

else {

ResponseText(Newtonsoft.Json.JsonConvert.SerializeObject(new { res = 0 }));

}

}

#endregion

java 按拼音模糊搜索汉字_C#中拼音模糊匹配汉字智能搜索相关推荐

  1. python拼音怎么写-Python 中拼音库 PyPinyin 的用法

    [摘要] 最近碰到了一个问题,项目中很多文件都是接手过来的中文命名的一些素材,结果在部署的时候文件名全都乱码了,导致项目无法正常运行. 后来请教了一位大佬怎么解决文件名乱码的问题,他说这个需要正面解决 ...

  2. Python中实现模糊匹配的魔法库:FuzzyWuzzy

    参考链接:https://mp.weixin.qq.com/s/5qzPb7HOCfRRGJICYUsAOQ FuzzyWuzzy一个简单易用的模糊字符串匹配工具包.让你轻松解决烦恼的匹配问题! 前言 ...

  3. java有没有友元函数_c++中友元函数理解与使用

    在学习c++这一块,关于友元函数和友元类,感觉还是不好理解,但是井下心来,理解,需要把我一下几点. 首先讲友元函数. (1)友元函数: 1)C++中引入友元函数,是为在该类中提供一个对外(除了他自己意 ...

  4. c++ 模糊搜索 正则表达式_c++中正则表达式(regex)

    http://www.codeceo.com/article/cpp11-regex-code.html regex库概览 1.basic_regex:正则表达式是一个通用的模板 typedef ba ...

  5. java 快排非递归_C++ 中快排的递归和非递归实现

    快排的递归 void quickSort1(int* root,int low,int high) { int pat=root[low]; if(low { int i=low,j=high; wh ...

  6. SQL查询中的模糊匹配

    匹配字符串中可包含如下四种通配符: _:匹配任意一个字符: %:匹配0个或多个字符: [ ]:匹配[ ]中的任意一个字符(若要比较的字符是连续的,则可以用连字符"-"表 达 ): ...

  7. Postgresql杂谈 22——Postgresql中的模糊匹配

    Postgresql对模糊查询的支持,主要有三种方法:传统的like操作符.SQL99新增的SIMILAR TO操作符以及POSIX正则表达式.除了前面两种SQL标准的模糊查询手段,Postgresq ...

  8. React中的模糊匹配与精准匹配

    路由的严格匹配与模糊匹配 1.默认使用的是模糊匹配(简单记:[输入的路径]必须包含要[匹配的路径],且顺序要一致)2.开启严格匹配:<Route exact={true} path=" ...

  9. es不建议模糊搜索_工作中的Elasticsearch-模糊检索

    [简介] ElasticSearch是一个基于Lucene的搜索服务器.实时分布式搜索和分析引擎.让你以前所未有的速度处理大数据成为可能.使用Java开发并使用Lucene作为其核心来实现所有索引和搜 ...

  10. 原 python实现模糊匹配_使用python中的fuzzywuzzy库进行模糊匹配实例

    fuzzywuzzy库是Python中的模糊匹配库,它依据 Levenshtein Distance 算法 计算两个序列之间的差异. Levenshtein Distance 算法,又叫 Edit D ...

最新文章

  1. UITextView左边距为0
  2. JavaScript 技术篇 - js在一个元素节点下包含多个text文本情况下的指定文本提取方法
  3. Java设计模式理论知识要点总结
  4. excel二极管伏安特性曲线_晶体二极管的识别与检测方法图解
  5. 阿里云服务器Svn-Server无法连接,阿里云服务器SVNServer配置
  6. HDU4372(第一类斯特林数)
  7. 博弈-sg函数的原理和优化(hdu-1536)
  8. 第一百五十期:Java程序员必备:异常的十个关键知识点
  9. python-类的定制
  10. php输出excel表格乱码和第一个0不显示的解决方法(详细)
  11. word文本框跨页显示方法
  12. matlab转换为exe文件,MATLAB文件转为exe可执行文件(package使用)
  13. 安卓虚拟键盘_微软双屏Surface Duo上的安卓应用体验:可瞬间变身笔记本电脑
  14. 高精度算法 万字详解(C++)
  15. k380没有验证码_罗技K380蓝牙键盘
  16. 微信公众号发送模版消息 Java实现
  17. win10到优麒麟到深度系统
  18. 复制网页文本的几种方法
  19. git fork 什么意思
  20. 如何破解linux密码

热门文章

  1. 如何设置qq支持临时会话聊天
  2. SPSS统计分析行业应用实战--SPSS 22.0新增
  3. Microled简介及关键工艺(巨量转移)
  4. blaster 驱动_为什么2020年IR Blaster在手机上仍然有用
  5. 红米note7android10,红米Note7 Pro 安卓10.0原生刷机包(最新固件升级包lineage17.1)
  6. 加载Selenium2Library却显示红色
  7. 电商后台设计:基本功能架构
  8. MongoVUE破解方法记录
  9. 【数学期刊】世界著名数学期刊
  10. kettle基础教程-kettle9教程