Foundation_NSString_计算字符长度和个数
来源:互联网 发布:复杂网络理论有什么用 编辑:程序博客网 时间:2024/05/20 16:43
1.计算字符串的长度</span>
(int)textLength:(NSString *)text//计算字符串长度 { float number = 0.0; for (int index = 0; index < [text length]; index++) { NSString *character = [text substringWithRange:NSMakeRange(index, 1)];if ([character lengthOfBytesUsingEncoding:NSUTF8StringEncoding] == 3){ number++;}else{ number = number + 0.5;}} return ceil(number); }
2.判断是字母还是汉字//输入的昵称是字母还是汉字,判断是否合格if(self.nickNameText){for (int i=0; iNSRange range=NSMakeRange(i,1);NSString *subString=[self.nickNameText substringWithRange:range];const char *cString=[subString UTF8String];if (strlen(cString)==3){NSLog(@”昵称是汉字”);if(self.nickNameText.length<2||self.nickNameText.length>8){UIAlertView *alertView=[[UIAlertView alloc]initWithTitle:@”不要输入低于2个或者高于8个” message:@”您输入的昵称格式有误,请重新输入” delegate:self cancelButtonTitle:@”取消” otherButtonTitles:@”确定”, nil];[alertView show];return;}}else if(strlen(cString)==1){NSLog(@”昵称是字母”);if(self.nickNameText.length<4||self.nickNameText.length>16){UIAlertView *alertView=[[UIAlertView alloc]initWithTitle:@”不要输入低于4个或者高于16个” message:@”您输入的昵称格式有误” delegate:self cancelButtonTitle:@”取消” otherButtonTitles:@”确定”, nil];[alertView show];return;}}}}
3.-(unichar)characterAtIndex:(NSUInteger)index;
4.example:
-(NSString*)filterWithString:(NSString*)string{ if (!self.keyArray) { return string; } NSString * copyString = [string copy]; for (NSString*keyString in self.keyArray) { if ([copyString isEqualToString:keyString]) { NSString*filter = [@"*" stringByPaddingToLength:copyString.length withString:@"*" startingAtIndex:0]; return filter; } } return string;}
5.搜索是否包含某词
NSString *str1 = @"can you \n speak English"; NSString *str = @"\n"; //在str1这个字符串中搜索\n,判断有没有 if ([str1 rangeOfString:str].location != NSNotFound) { NSLog(@"这个字符串中有\n"); } //rangeOfString 前面的参数是要被搜索的字符串,后面的是要搜索的字符 //NSNotFound 表示请求操作的某个内容或者item没有发现,或者不存在
+ (NSString *)stringOutPutUrlWithUrl: (NSString *)url Appid:(NSString *)appid SecretKey:(NSString *)key{ NSMutableString *idstring = [[NSMutableString alloc] initWithString:url]; if ([url rangeOfString:@"?"].length > 0) { [idstring appendFormat:@"&app_id=%@", appid]; } else { [idstring appendFormat:@"?app_id=%@", appid]; } NSURL *originalurl = [NSURL URLWithString:idstring]; NSString *stringA = [originalurl path]; NSString *paramstr = [originalurl query]; NSArray *paramarr = [paramstr componentsSeparatedByString:@"&"]; NSMutableArray *namearr = [[NSMutableArray alloc] init]; NSMutableDictionary *sortDic = [[NSMutableDictionary alloc] init]; for (NSString *string1 in paramarr) { NSArray *array = [string1 componentsSeparatedByString:@"="]; NSString *name = array[0]; [namearr addObject:name]; [sortDic setObject:array[1] forKey:name]; } NSArray *sortedArray = [namearr sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) { NSComparisonResult result = [obj1 compare:obj2]; return result == NSOrderedDescending; }]; NSMutableString *stringBnew = [[NSMutableString alloc] init]; for (NSString *strname in sortedArray) { [stringBnew appendFormat:@"%@=%@&", strname, sortDic[strname]]; } NSString *stringB = [stringBnew substringToIndex:(stringBnew.length - 1)]; NSString *stringC = key; int timestamp = (int)[[NSDate date] timeIntervalSince1970]; NSString *stringD = [NSString stringWithFormat:@"%@",[[NSString alloc] initWithFormat:@"%1x", timestamp]]; NSString *stringE = [NSString stringWithFormat:@"%@&%@&%@&%@", stringA, stringB, stringC, stringD]; NSString *stringF = [[self sha1:stringE] lowercaseString]; NSString *stringG = [NSString stringWithFormat:@"%@%@",stringF, stringD]; NSString *finalUrl = [NSString stringWithFormat:@"%@?%@&sign=%@", [idstring componentsSeparatedByString:@"?"][0], stringB, stringG]; return finalUrl;}
http://blog.sina.com.cn/s/blog_465a08fe01010xai.html
0 0
- Foundation_NSString_计算字符长度和个数
- LCS长度个数计算
- JavaScript 中英文字符判断和长度计算
- 如何计算字符的长度和截取字符(小节)
- Java,php,python,js 计算字符串长度和数组个数
- 计算字符长度
- 计算字符个数
- 计算字符个数
- 计算字符个数
- 牛客网 | 计算字符个数
- 计算字符个数
- 【HWOJ】计算字符个数
- 计算字符个数
- 计算重复字符个数
- 计算字符个数
- 计算字符个数
- 002-计算字符个数
- 计算字符个数
- 使用三星手机加载大图的时候,图片不显示出来,提示Bitmap too large to be uploaded into a texture exception
- (题目30)题目1172:哈夫曼树
- @RequestMapping 用法详解之地址映射 解决 界面保存后 无法关闭刷新问题
- 转载科学网文章-circos教程(一)
- 网络安全工具100强介绍与下载
- Foundation_NSString_计算字符长度和个数
- 利用分析函数生成连续数据
- 通过read和next方法从键盘输入一个字符(Java)
- appium(跨平台自动化测试工具) windows下环境搭建
- Windows Phone 8.1 生命周期
- 安装PHP常见问题处理方法
- LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
- 最佳的75个安全工具
- P2P平台运作(1)