根据文本最大字符数进行字符串截取
来源:互联网 发布:linux svn 重试3次 编辑:程序博客网 时间:2024/05/22 19:26
最近遇见一个问题,需要限制输入文本的字符数,这时候需要对包含中英文的字符串进行截取,从而达到限制字符数的需求。所以写了个方法,记录一下。
- (NSDictionary *)getTextLength:(NSString *)text { NSDictionary *dic = [NSDictionary dictionary]; NSInteger index = 0; NSInteger totalLen = 0; NSInteger maxLength = (self.limitCount == 1500)?1500:100; BOOL isChinese = NO; for (NSInteger i = 0; i < text.length; i++) { NSRange range = NSMakeRange(i, 1); NSString *subString = [text substringWithRange:range]; const char *cString = [subString UTF8String]; if (strlen(cString) == 3) { totalLen += 3; isChinese = YES; } else { totalLen++; isChinese = NO; } if (totalLen > maxLength) { index = i; if (isChinese) { totalLen -= 3; } else { totalLen--; } dic = @{@"totalLen": [NSNumber numberWithInteger:totalLen], @"index": [NSNumber numberWithInteger:index]}; break; } } return dic;}这个方法返回的字典主要包括两个,一个是截取之后的字符数,返回这个用于显示提示剩余字符数,第二个是需要截取到的位置。因为使用了UTF-8编码,所以一个中文占三个字符,如果是别的编码方式可能需要注意一下是否是三个字符。
0 0
- 根据文本最大字符数进行字符串截取
- 根据字节数截取字符串...
- 根据字节数截取字符串
- 根据字节数截取字符串
- 按照字符数截取字符串
- SQLSERVER中根据字符截取字符串
- C#根据字节数截取字符串
- java根据字节数截取字符串
- Java根据字节数截取完整字符串
- JQuery 根据字节数截取字符串()
- iOS根据字节数截取字符串
- 用于反转字符进行截取最大字符子串
- js 获得字符串字符数,截取一定字符的字符串
- MySQL字符串截取 和 截取字符进行查询
- 根据字节数获取字符长度 并截取
- SQL 根据指定字符截取字符串Split函数
- 根据字符串出现在字符中的次序截取 + 替换一次
- 根据指定字符长度截取字符串(包含中英文)
- 年度总结----给自己一个答案
- A1090. Highest Price in Supply Chain (25)
- 技能库--统计文件大小 +Fork-Join(90)
- iOS应用开发基础(三)基础知识
- Activity
- 根据文本最大字符数进行字符串截取
- 电源芯片选型之:ADC对纹波要求计算
- 【计算机视觉】OpenCV读取视频获取时间戳等信息(PS:经测试并不是时间戳,与FFMPEG时间戳不一样)
- 10秒定时炸弹
- PHP生成数据字典代码
- 数码管
- iOS 之cell自适应高度
- python 调用spark
- 简易时钟