IOS 汉字拼音排序
在网上找了好久,没有找到IOS版拼音排序的好例子,在项目中用到了排序,总结出来之后,写了一个小例子供大家参考
-(NSMutableArray*) sortByPinyin:(NSMutableArray*)stringsToSort
{//获取字符串中文字的拼音首字母并与字符串共同存放NSMutableArray *chineseStringsArray=[NSMutableArray array];for(int i=0;i<[stringsToSort count];i++){ChineseString *chineseString=[[ChineseString alloc]init];chineseString.string=[NSString stringWithString:[stringsToSort objectAtIndex:i]];if(chineseString.string==nil){chineseString.string=@"";}if(![chineseString.string isEqualToString:@""]){NSString *pinYinResult=[NSString string];for(int j=0;j<chineseString.string.length;j++){NSString *singlePinyinLetter=[[NSString stringWithFormat:@"%c",pinyinFirstLetter([chineseString.string characterAtIndex:j])]uppercaseString];pinYinResult=[pinYinResult stringByAppendingString:singlePinyinLetter];}chineseString.pinYin=pinYinResult;}else{chineseString.pinYin=@"";}[chineseStringsArray addObject:chineseString];}//Step3:按照拼音首字母对这些Strings进行排序NSArray *sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"pinYin" ascending:YES]];[chineseStringsArray sortUsingDescriptors:sortDescriptors];// Step4:如果有需要,再把排序好的内容从ChineseString类中提取出来NSMutableArray *result=[NSMutableArray array];for(int i=0;i<[chineseStringsArray count];i++){[result addObject:((ChineseString*)[chineseStringsArray objectAtIndex:i]).string];}return result;
}
例子链接
IOS 汉字拼音排序相关推荐
- c语言中文拼音排序,为sqlite增加汉字拼音排序功能
此文已由作者严跃杰授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. Sqlite3是一款C语言实现的小型SQL数据库引擎,它体积小巧但功能强大, 性能表现也非常不错, 因此在客 ...
- Java---根据汉字拼音排序(Tree系列)
在做项目的时候,一般项目都会有查询功能,这时有个需求,就是根据汉字拼音排序. 话不多少,直接上代码: import java.text.Collator; import java.util.Compa ...
- java 汉字拼音排序_Java汉字排序(2)按拼音排序
1.前言 对于包含汉字的字符串来说,排序的方式主要有两种: 一种是拼音,一种是笔画. 本文就讲述如何实现按拼音排序的比较器(Comparator). 作者:Jeff 发表于:2007年12月21日 1 ...
- Oracle Order by 按汉字拼音排序
测试代码参见: select name ,ascii(name) from ( select '{' name from dual union select '%' name from dual un ...
- php 按汉字拼音排序,PHP数组排序关于按中文拼音排序的问题
这天做个页面,需要将图片表里面图片的标签拉出来拆分好后去重按自然排序.结果很囧,应该排序的结果是0-9-A-z-阿-中,但是中文部分就是很乱.再找问题,结果发现自然排序是按照字符编码的顺序来排列.由于 ...
- oracle order by 汉字,Oracle Order by 按汉字拼音排序
测试代码参见: select name ,ascii(name) from ( select '{' name from dual union select '%' name from dual un ...
- Collections.sort实现倒序汉字拼音排序,默认是按照正序进行汉字拼音排序MYSQL语句支持汉字排序SQL汉字排序
前言: 需求上遇到过,业务希望一些下拉框,按照汉字拼音的顺序来进行展示,需要对下拉框的List进行排序. 特别注意: Collections.reverse()方法是将数据倒置,并非倒序直接排序. 倒 ...
- php 按汉字拼音排序,php 数组按中文拼音排序
本篇文章给大家分享的内容是关于php数组按中文拼音排序,有着一定的参考价值,有需要的朋友可以参考一下 $str = "我们可以在浏览器中看到,当鼠标移到元素上时,元素开始向右移动,开始比较慢 ...
- Javascript 汉字拼音排序
使用系统函数 String.localeCompare 比较大小, Array.sort 排序 即可完成 如: 1 var data = [{name:'脚本',value:2},{name:'中文' ...
最新文章
- ICCV2021|一种用于解决点云场景中同类对象分割的网络
- mysql proxies_priv_Mysql5.7.18利用MySQLproxies_priv实现类似用户组管理实例分享
- 泰国基础教育管理实行新体制
- 基于Teigha.Net实现CAD到SHP的转换方案
- dedecms 常用标签
- 获取Linux命令源代码的方法【ZT】
- 【LOJ119】单源最短路 模板
- itop 导入AD用户
- 年会将近,如何用Excel做个抽奖界面?
- 万能视频格式转换器 v 2018 全能版
- cscope.exe程序的base64文本
- mysql生成uui mybatis_Mybatis【配置文件】详解
- 唯品会订单分库分表的实践总结以及关键步骤
- 用 matplotlib 做交互式的票房分析
- 《TridentNet:Scale-Aware Trident Networks for Object Detection》论文笔记
- 红米6A 9.93开发版 刷 magisk面具 方法
- 2016微信抢红包助手及源码
- el-table树型结构自动展开
- softmax的log似然代价函数(公式求导)
- 微信小程序开发(四)小程序数据绑定以及数据的动态获取与赋值
热门文章
- Android:自定义View之番茄钟
- Java如何处理比较大的数据
- 论文笔记 EMNLP 2021|Lifelong Event Detection with Knowledge Transfer
- vlive显示服务器不流畅,为什么手机登录vlive出现这个一直进不去
- 里程碑!Apache Pulsar 全球 GitHub 贡献者数量超越 520——点进来定位你的名字!...
- php代写,PHP代写:BIOM9450 Web-based Medication Management System代写Java编程、Java代做
- 百度莱茨狗领取方式大全
- 学习了两个多月就进了我们公司,顺利过了试用期,我心塞了...
- java jframe案例_Java JFrame.setMinimumSize方法代码示例
- 【c#】Fedex官方API对接过程