字符串中大小写的转换

一、大小写转换
1、- (NSString *)uppercaseString; 所有字符转化为大写
2、- (NSString *)lowercaseString; 所有字符转化为小写
3、- (NSString *)capitalizedString; 所有单词首字母转化大写

NSLog(@”%@”, [demoTwo uppercaseString]);
NSLog(@”%@”, [demoTwo lowercaseString]);
NSLog(@”%@”, [demoTwo capitalizedString]);

2013-02-28 09:17:43.759 NSStringDemo[424:303] GOOD MORNING
2013-02-28 09:17:43.759 NSStringDemo[424:303] good morning
2013-02-28 09:17:43.760 NSStringDemo[424:303] Good Morning

二、大小写转换(本地化)
- (NSString )uppercaseStringWithLocale:(NSLocale )locale NS_AVAILABLE(10_8, 6_0); 所有字符转化为大写(本地化)
- (NSString )lowercaseStringWithLocale:(NSLocale )locale NS_AVAILABLE(10_8, 6_0);所有字符转化为小写(本地化)
- (NSString )capitalizedStringWithLocale:(NSLocale )locale NS_AVAILABLE(10_8, 6_0); 所有单词首字母转化大写(本地化)

NSLog(@”%@”, [demoTwo uppercaseStringWithLocale:locale]);
NSLog(@”%@”, [demoTwo lowercaseStringWithLocale:locale]);
NSLog(@”%@”, [demoTwo capitalizedStringWithLocale:locale]);

2013-02-28 09:46:19.042 demoTwo[732:11303] GOOD MORNING
2013-02-28 09:46:19.044 demoTwo[732:11303] good morning
2013-02-28 09:46:19.045 demoTwo[732:11303] Good Morning

三、- (NSString )stringByTrimmingCharactersInSet:(NSCharacterSet )set; 字符串替换

NSString *demoFive = [[NSString alloc] initWithString:@”good @3!3%”];
NSCharacterSet set = [NSCharacterSet characterSetWithCharactersInString:@”@/:;()¥「」"、[]{}#%-+=_\|~<>$

四、- (void)getLineStart:(NSUInteger )startPtr end:(NSUInteger )lineEndPtr contentsEnd:(NSUInteger *)contentsEndPtr forRange:(NSRange)range; 返回指定开始索引到结束索引,指定段的字符串

NSUInteger lineStart,lineEnd,contentsEnd;
[demoFive getLineStart:&lineStart end:&lineEnd contentsEnd:&contentsEnd forRange:NSMakeRange(4, 3)];
NSLog(@”%@”, [NSString stringWithFormat:@”lineStart=%lu, lineEnd=%lu, contentsEnd=%lu”, lineStart, lineEnd, contentsEnd]);

2013-02-28 11:57:19.251 NSStringDemo[1843:303] lineStart=0, lineEnd=11, contentsEnd=11

五、- (NSRange)lineRangeForRange:(NSRange)range;返回字符串指定段的位置和长度 ?
NSLog(@”%ld”, [demoTwo lineRangeForRange:NSMakeRange(7, 2)].length);

2013-02-28 11:32:44.667 NSStringDemo[1664:303] 12

六、- (void)getParagraphStart:(NSUInteger )startPtr end:(NSUInteger )parEndPtr contentsEnd:(NSUInteger *)contentsEndPtr forRange:(NSRange)range; 指定段分段取字符串

NSUInteger paraStart, paraEnd, contEnd;
NSString *aString1 = @”Apple\u2028Orange\u2029Banana\r\nLemon”;
[aString1 getParagraphStart:&paraStart end:&paraEnd contentsEnd:&contEnd forRange:NSMakeRange(14, 1)] ;
NSLog(@”%@”, [NSString stringWithFormat:@”ParagraphStart=%d, ParagraphEnd=%d, ContentsEnd=%d”, paraStart, paraEnd, contEnd]);

2013-02-28 11:40:46.091 NSStringDemo[1720:303] ParagraphStart=13, ParagraphEnd=21, ContentsEnd=19

七、- (NSRange)paragraphRangeForRange:(NSRange)range; 指定段分段的位置和长度
NSRange range = [aString1 paragraphRangeForRange:NSMakeRange(3,5)];
NSLog(@”%lu-%lu”,range.location, range.length);

八、- (NSString *)description; 返回字符串
NSLog(@”%@”, [demoTwo description]);

2013-02-28 16:57:32.312 NSStringDemo[794:303] good morning

九、- (NSUInteger)hash; 返回字符串哈希地址
NSLog(@”%lu”, [demoTwo hash]);

2013-02-28 17:01:32.032 NSStringDemo[820:303] 16759986921038887375

十、编码处理
- (NSStringEncoding)fastestEncoding; // 字符串最快编码值
- (NSStringEncoding)smallestEncoding; // 字符串最小编码值
- (NSData *)dataUsingEncoding:(NSStringEncoding)encoding allowLossyConversion:(BOOL)lossy; // 返回指定编码的NSData对象,可以选择无损转化
- (NSData *)dataUsingEncoding:(NSStringEncoding)encoding; // 返回指定编码的NSData对象
- (BOOL)canBeConvertedToEncoding:(NSStringEncoding)encoding; //判断是否可以无损转化编码

NSLog(@”%lu”, [demoTwo fastestEncoding]);
NSLog(@”%lu”, [demo smallestEncoding]);

NSLog(@”%@”, [demoTwo dataUsingEncoding:NSShiftJISStringEncoding allowLossyConversion:YES]);
NSLog(@”%@”, [demoTwo dataUsingEncoding:NSWindowsCP1251StringEncoding]);
NSLog(@”%d”, [demoTwo canBeConvertedToEncoding:NSMacOSRomanStringEncoding]);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值