iOS学习 NSPredicate模糊搜索(全方面搜索)支持中文、数字、字母
来源:互联网 发布:天津网络推广公司排名 编辑:程序博客网 时间:2024/04/27 07:25
可以实现可通过汉字,拼音,拼音首字母,拼音中间字母进行搜索的搜索栏。
+ (NSString *)getPinyinWithString:(NSString *)string{
NSString * pinyin;
if ([stringlength]) {
NSMutableString * ms = [[NSMutableStringalloc] initWithString:string];
if (CFStringTransform((__bridgeCFMutableStringRef)ms, 0,kCFStringTransformMandarinLatin, NO)) {
}
if (CFStringTransform( (__bridgeCFMutableStringRef)ms, 0,kCFStringTransformStripDiacritics,NO)) {
}
pinyin = ms;
}
return pinyin;
}
+ (NSString *)getFirstLetterWithString:(NSString *)string{
NSString * regex =@"^[a-zA-Z]*$";
NSString * firstLetter = [stringsubstringToIndex:1];
NSPredicate * predicate = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@", regex];
if ([predicateevaluateWithObject:firstLetter] ==YES) {
return [firstLetteruppercaseString];
}else {
return@"~";
}
}
- //是否是有效的正则表达式
- +(BOOL)isValidateRegularExpression:(NSString *)strDestination byExpression:(NSString *)strExpression
- {
- NSPredicate *predicate = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@", strExpression];
- return [predicate evaluateWithObject:strDestination];
- }
- //验证email
- +(BOOL)isValidateEmail:(NSString *)email {
- NSString *strRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{1,5}";
- BOOL rt = [CommonTools isValidateRegularExpression:email byExpression:strRegex];
- return rt;
- }
- //验证电话号码
- +(BOOL)isValidateTelNumber:(NSString *)number {
- NSString *strRegex = @"[0-9]{1,20}";
- BOOL rt = [CommonTools isValidateRegularExpression:number byExpression:strRegex];
- return rt;
- }
- iOS学习 NSPredicate模糊搜索(全方面搜索)支持中文、数字、字母
- NSPredicate模糊搜索
- 模糊搜索NSPredicate
- ios 学习之 NSPredicate 模糊、精确、查询 ,包括模糊搜索,多条件搜索,及属性中多个字段检索
- ios NSPredicate NSPredicate 查询、搜索
- IOS NSPredicate 查询、搜索
- IOS NSPredicate 查询、搜索
- IOS NSPredicate 查询、搜索
- iOS NSPredicate 查询、搜索
- iOS NSPredicate 查询、搜索
- iOS NSPredicate 查询、搜索
- IOS NSPredicate 查询、搜索
- IOS NSPredicate 查询、搜索
- IOS NSPredicate 查询、搜索
- IOS NSPredicate 查询、搜索
- iOS NSPredicate 查询、搜索
- IOS NSPredicate 查询、搜索
- iOS NSPredicate 查询、搜索
- 趣发现 资源页面请求链接分析
- JS-JavaScript数据类型与对象
- 微信:小程序学习笔记(2)
- JsonDB - python实现的基于JSON格式的轻量级数据库开源项目
- (笔记)Spring实战_征服数据库(1)_Spring的数据访问哲学
- iOS学习 NSPredicate模糊搜索(全方面搜索)支持中文、数字、字母
- 2117数据结构实验之链表二:逆序建立链表
- HDU 2870 Largest Submatrix -
- 第四周 项目3-单链表应用(1)
- Xcode编译运行出现:CUICatalog: Invalid asset name supplied: (null)
- AndFix简单实践
- C++11使用emplace_back代替push_back
- java小程序
- AlertDialog弹窗引用自定义layout布局动态显示seekbar进度