汉字转拼音

NSMutableString *ms = [[NSMutableString alloc] initWithString:@"我是中国人"];
if (CFStringTransform((__bridge CFMutableStringRef)ms, 0, kCFStringTransformMandarinLatin, NO)) {NSLog(@"Pingying: %@", ms); // wǒ shì zhōng guó rén
}
if (CFStringTransform((__bridge CFMutableStringRef)ms, 0, kCFStringTransformStripDiacritics, NO)) {NSLog(@"Pingying: %@", ms); // wo shi zhong guo ren
}

中文拼音排序器

#define GB18030_ENCODING CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000)
+ (NSComparator)compor {return ^NSComparisonResult(NSString *obj1, NSString *obj2) {NSString *str1 = [obj1 stringByAddingPercentEscapesUsingEncoding:GB18030_ENCODING];NSString *str2 = [obj2 stringByAddingPercentEscapesUsingEncoding:GB18030_ENCODING];return [str1 compare:str2];};
}

原理:中文gb编码本来就是用拼音排序的就hack了一下:在stringByAddingPercentEscapesUsingEncoding:后面用16位编码 将中文转为ascii来比较 更简洁。

转载于:https://www.cnblogs.com/songxing10000/p/4732373.html

汉字转拼音,中文拼音排序器相关推荐

  1. 【我的Android进阶之旅】Android实现中文汉字笔划(笔画)排序、中文拼音排序、英文排序的国家地区选择界面

    一.需求描述 最近要做一个类似微信的,在登录界面选择国家地区的功能,微信有中文汉字笔画排序以及中文拼音排序等几种方式,如下所示: 微信:简体中文.拼音排序 微信:繁体中文.笔画排序 微信 英文 字母排 ...

  2. Java字母笔顺_Android实现中文汉字笔划(笔画)、中文拼音排序、英文排序

    一.需求描述 最近要做一个类似微信的,在登录界面选择国家地区的功能,微信有中文汉字笔画排序以及中文拼音排序等几种方式,如下所示: 微信:简体中文.拼音排序 微信:繁体中文.笔画排序 微信 英文 字母排 ...

  3. php 按汉字拼音排序,PHP数组排序关于按中文拼音排序的问题

    这天做个页面,需要将图片表里面图片的标签拉出来拆分好后去重按自然排序.结果很囧,应该排序的结果是0-9-A-z-阿-中,但是中文部分就是很乱.再找问题,结果发现自然排序是按照字符编码的顺序来排列.由于 ...

  4. Android实现中文汉字笔划(笔画)、中文拼音排序、英文排序

    发布时间:2018-11-16 技术:Android 概述 最近要做一个类似微信的,在登录界面选择国家地区的功能,微信有中文汉字笔画排序以及中文拼音排序等几种方式,如下所示: 简体中文 拼音排序;繁体 ...

  5. php 按汉字拼音排序,php 数组按中文拼音排序

    本篇文章给大家分享的内容是关于php数组按中文拼音排序,有着一定的参考价值,有需要的朋友可以参考一下 $str = "我们可以在浏览器中看到,当鼠标移到元素上时,元素开始向右移动,开始比较慢 ...

  6. ElasticSearch 2.4.X实现中文拼音排序

    前言 最近接到一个需求,要求实现搜索框的搜索结果可以按照中文排序,本人灵机一动,那不很简单吗,直接按照es自带的sort功能处理下不就行了吗?两分钟的代码量,半天的喝茶时间,白赚半天的故事点,嘿嘿. ...

  7. 中文按拼音首字母排序的C++实现方案

    先介绍下背景,最近有个需求,需要将用户的好友列表按照昵称的拼音首字母排序,类似于手机电话簿的联系人.一开始建议让终端同学去做这点,毕竟终端现有的电话簿模块已经实现了,不过终端同学说电话簿是系统组件,移 ...

  8. PostgreSQL的中文拼音排序

    为什么80%的码农都做不了架构师?>>>    前一段时间开发人员咨询,说postgresql里面想根据一个字段做中文的拼音排序,但是不得其解.So,Take a Loooook. ...

  9. [转载]ExtJS中grid按照中文拼音首字母排序、改变行背景、列背景、静态数据分页不再困难...

    代码 1 本示例主要使用到了静态数据分页 Ext.data.PagingMemoryProxy组件.Ext.PagingToolbar分页条.viewConfig的getRowClass 方法.列co ...

最新文章

  1. jieba之sedict(自定义字典)
  2. IOS使用个推遇到的坑
  3. Java精讲:生产者-消费者
  4. formdata上传文件_封装一个多文件断点续传、分片上传、秒传、重试机制的组件...
  5. python中实现多路分支的最佳控制结构是_哪个选项是实现多路分支的最佳控制结构? (1.3分)_学小易找答案...
  6. redisson版本_通用Redisson版本
  7. LAMP架构之编译安装MySQL和PHP
  8. sqlite3在Python2.7下对于中文路径的支持
  9. 自定义 DameK UltraBlue 的 Command Line
  10. Android统计图控件之圆饼图
  11. 目标客户画像_数据运营实战(一):细分目标人群,结合用户画像的实践
  12. 微信小程序 - 开发者账号申请流程
  13. 分析时间复杂度,主定理,势能分析
  14. Linux查看末尾几行的命令
  15. 用Java写一个水仙花数算法
  16. PHP微信公众号网页授权登录 扫码登录 获取用户基本信息
  17. 基于软总线的实时组件调度技术研究
  18. java计算机毕业设计学校食堂订餐管理源码+数据库+系统+lw文档+部署
  19. 线性代数笔记【空间曲面】
  20. 高精度阶乘和 高精度算法(c语言)

热门文章

  1. Java 利用replaceAll 替换中括号
  2. CodeIgniter 的购物车类只能添加10个商品的解决办法
  3. 优秀教程:创建基于 Ajax 的文件拖放上传功能
  4. 使用 Firefox攻击Web2.0应用(一)
  5. 3.4.2 停止等待协议
  6. Xilinx FPGA的配置
  7. 三星emcp型号详解_嵌入式存储产品发展趋势:uMCP取代eMCP序幕拉开
  8. php循环获取xml节点,PHP_PHP遍历XML文档所有节点的方法,本文实例讲述了PHP遍历XML文档 - phpStudy...
  9. 数组公式基本功修炼之数组公式解读
  10. linux shell写的文件断网没保存