iOS中中文转字母,直接上代码
2016-01-14 11:32
302 查看
@implementation NSString (Capital)
(NSString )firstCharactor:(NSString )aString
{
//转成了可变字符串
NSMutableString *str = [NSMutableString stringWithString:aString];
//先转换为带声调的拼音
CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformMandarinLatin,NO);
//再转换为不带声调的拼音
CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformStripDiacritics,NO);
//转化为大写拼音
NSString *first = [str capitalizedString];
//获取并返回首字母
if ([self isACharacter:[first substringToIndex:1]]) {
return [first substringToIndex:1];
}else {
return @”#”;
}
}
(BOOL)isACharacter:(NSString *)character
{
NSString *ZIMU = @”^[a-zA-Z]”;
NSPredicate *regextestA = [NSPredicate predicateWithFormat:@”SELF MATCHES %@”, ZIMU];
if ([regextestA evaluateWithObject:character] == YES)
{
return YES;
}
else
{
return NO;
}
}
@end
(NSString )firstCharactor:(NSString )aString
{
//转成了可变字符串
NSMutableString *str = [NSMutableString stringWithString:aString];
//先转换为带声调的拼音
CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformMandarinLatin,NO);
//再转换为不带声调的拼音
CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformStripDiacritics,NO);
//转化为大写拼音
NSString *first = [str capitalizedString];
//获取并返回首字母
if ([self isACharacter:[first substringToIndex:1]]) {
return [first substringToIndex:1];
}else {
return @”#”;
}
}
(BOOL)isACharacter:(NSString *)character
{
NSString *ZIMU = @”^[a-zA-Z]”;
NSPredicate *regextestA = [NSPredicate predicateWithFormat:@”SELF MATCHES %@”, ZIMU];
if ([regextestA evaluateWithObject:character] == YES)
{
return YES;
}
else
{
return NO;
}
}
@end
相关文章推荐
- iOS的仿射的一点理解
- iOS导航栏和状态栏
- iOS中3种正则表达式的使用与比较
- WWDC2014之iOS使用动态库 framework【转】
- TableView滑动不加载
- iOS应用内语言切换功能
- iOS 读取通讯录
- iOS 浅析 isEqualToString和==之间的区别
- iOS 截屏代码的实现
- iOS开发经常用到的第三方库
- 干货分享--iOS及Mac开源项目和学习资料【超级全面】
- iOS数据持久化常见的集中方式及实现
- iOS本地推送学习心得
- iOS证书及相关介绍(ios自学笔记)
- iOS开发 实现字母索引最快捷方法
- 关于iOS提交审核的IDFA-2
- iOS开发用Tableview实现能改变字体颜色的高仿系统的ActionSheet
- 关于iOS提交审核的IDFA
- IOS闪退信号
- iOS控件抖动