iOS- 本地文本容错搜索引擎2-->如何实现英文(英文首字母,汉语拼音)对中文的搜索?
1.前言


2.如何将中文转成拼音,首字母
//判断字符串是否是中文
if ([ChineseInclude isIncludeChineseInString:@“百度"])
//然后将中文转换成拼音
NSString *pybody = [PinYinForObjc chineseConvertToPinYin:@"百度"];
//同时将中文转换成拼音首字母
NSString *pyheader = [PinYinForObjc chineseConvertToPinYinHead:@“百度”]; .
3.如何集成进本地容错搜索引擎
同时将拼音和拼音首字母加入关联
for (MenuItemObject *objmenu in allmenus) {
//检测是否是有中文
if ([ChineseInclude isIncludeChineseInString:objmenu.displayname]) {
//转换为拼音,和拼音首字母
NSString *pybody = [PinYinForObjc chineseConvertToPinYin:objmenu.displayname];
NSString *pyheader = [PinYinForObjc chineseConvertToPinYinHead:objmenu.displayname];
//将其索引关联上本地搜索引擎
[[PermissiveResearchDatabase sharedDatabase] addRetainedObjet:objmenu forKey:pybody];
[[PermissiveResearchDatabase sharedDatabase] addRetainedObjet:objmenu forKey:pyheader]; }
[[PermissiveResearchDatabase sharedDatabase] addRetainedObjet:objmenu forKey:objmenu.displayname];
}

iOS- 本地文本容错搜索引擎2-->如何实现英文(英文首字母,汉语拼音)对中文的搜索?的更多相关文章
- IOS本地,APNS远程推送(具体过程)
添加本地推送 ///本地添加 -(void)addLocalPushNotification:(UIButton*)sender; { NSLog(@"%s",__FUNCTION ...
- iOS本地动态验证码生成-b
用于ios本地动态生成验证码,效果如下: demo.gif 导入CoreGraphics.framework用于绘制图形 封装UIView,便捷使用,代码如下: AuthcodeView.h #imp ...
- ios本地文件内容读取,.json .plist 文件读写
ios本地文件内容读取,.json .plist 文件读写 本地文件.json .plist文件是较为常用的存储本地数据的文件,对这些文件的操作也是一种常用的基础. 本文同时提供初始化变量的比较标准的 ...
- iOS开发技术分享(1)— iOS本地数据存储
iOS开发技术分享(1)— iOS本地数据存储 前言: 我本是一名asp.net程序员,后来加入了iOS游戏开发队伍,到现在也有一年多的时间了.这一年来,每天都干到2.3点钟才睡觉,不为别的,只为了学 ...
- IOS 本地通知 UILocalNotification
IOS 本地通知 UILocalNotification [本文章第四部分中的代码逻辑来自网上的借鉴,并非我自己原创] 大概一个月前,我开始跟着做IOS项目了.学习C++,了解Objective-C, ...
- iOS 检测文本中的 URL、电话号码等信息
iOS 检测文本中的 URL.电话号码等信息 要检测文本中的 URL.电话号码等,除了用正则表达式,还可以用 NSDataDetector. 用 NSTextCheckingResult.Checki ...
- iOS中获取本地通讯录联系人以及汉字首字母排序
iOS中获取手机通讯录中的联系人信息: /*** 加载本地联系人*/ - (void)loadLocalContacts { //新建一个通讯录类 ABAddressBookRef addressBo ...
- iOS富文本组件的实现—DTCoreText源码解析 数据篇
本文转载 http://blog.cnbang.net/tech/2630/ DTCoreText是个开源的iOS富文本组件,它可以解析HTML与CSS最终用CoreText绘制出来,通常用于在一些需 ...
- iOS 本地通知 操作
iOS 本地通知 操作 1:配置通知:然后退出程序: UILocalNotification *localNotif = [[UILocalNotification alloc] init]; loc ...
随机推荐
- 数据结构与算法之链表(LinkedList)——简单实现
这一定要mark一下.虽然链表的实现很简单,且本次只实现了一个方法.但关键的是例子:单向链表的反转.这是当年我去H公司面试时,面试官出的的题目,而当时竟然卡壳了.现在回想起来,还是自己的基本功不扎实, ...
- scribe日志系统安装笔记
版本历史 2011-02-12 17:36:57 完成文章2011-02-23 10:49:12 更新,修正部分文字 目前web访问日志为crontab定时清空,而且负载均衡后,访问随机分配到一台服务 ...
- vue组件引入失败原因之一
引入组件的时候,路径问题 引入当前文件夹的另外一个文件:import ZiZuJianOne from 'ZiZuJianOne.vue',提示: 加上:“./”让把路径变成:import ZiZuJ ...
- EDB*Plus的当前路径问题
磨砺技术珠矶,践行数据之道,追求卓越价值 回到上一级页面: PostgreSQL基础知识与基本操作索引页 回到顶级页面:PostgreSQL索引页 [作者 高健@博客园 luckyjackg ...
- 26-[jQuery]-内容补充
jquery除了咱们上面讲解的常用知识点之外,还有jquery 插件.jqueryUI知识点 jqueryUI 官网: https://jqueryui.com/ jqueryUI 中文网: http ...
- CF13E Holes LCT
CF13E Holes LG传送门 双倍经验题,几乎同[HNOI2010]弹飞绵羊,LCT练手题,LG没有LCT题解于是发一波. 从当前点向目标点连边,构成一棵树,带修改就用LCT动态维护答案,由于不 ...
- 异步任务(Celery)详解
一.背景 在开发中,我们可能经常会遇到一些需要执行时间很长的任务,如果放在前端,会让用户一直卡在那儿等待或者一直转圈圈,体验非常不好.为了改善这种体验,我赶紧上网搜索,果然,前人早已有解决办法了.那就 ...
- linux下的python3,virtualenv,Mysql,nginx,redis安装配置
Mysql安装和使用:点我 Redis安装和使用:点我 centos7安装Python3以及tab补全键的使用:点我 Linux下的virtualenv:点我 nginx的安装和使用:点我
- Jmeter接口测试(六)关联&正则匹配
问题思考 接口测试过程中经常需要接口之间关联调用,比如获取上一个接口的返回值,作为另一个接口的请求参数,那么该如何从处理呢? 这里需要使用 Jmeter 的正则表达式提取器,通过对响应的数据来提取指定 ...
- Python 函数修饰符(装饰器)的使用
Python 函数修饰符(装饰器)的使用 1. 修饰符的来源修饰符是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志.性能测试.事务处理等. 修饰符是解决这类问题的绝佳设计, ...