1. //有字符串“A~B^C_D>E",拆分出单个字母:
NSString *str =@" A~B^C_D>E ";
str = [str stringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceAndNewlineCharacterSet]];//去掉前边和后边的空格
NSCharacterSet * charSet = [NSCharacterSetcharacterSetWithCharactersInString:@"^~_>"];
NSArray *arr = [strcomponentsSeparatedByCharactersInSet:charSet];
//输出看效果
[arr enumerateObjectsUsingBlock:^(id obj,NSUInteger idx,BOOL *stop) {
NSLog(@"A~B^C_D->[%@]", obj);
}];
打印结果: 2016-05-05 00:17:14.245 c001[2490:316001] A~B^C_D->[A]
2016-05-05 00:17:14.246 c001[2490:316001] A~B^C_D->[B]
2016-05-05 00:17:14.247 c001[2490:316001] A~B^C_D->[C]
2016-05-05 00:17:14.247 c001[2490:316001] A~B^C_D->[D]
2016-05-05 00:17:14.247 c001[2490:316001] A~B^C_D->[E]
2.//关于invertedSet
NSString *string =@" 123,45_6 7/8>9a ";
NSString * kNumber =@"0123456789.";
NSCharacterSet *numberSet = [[NSCharacterSetcharacterSetWithCharactersInString:kNumber]invertedSet];
//invertedSet方法是去反字符,把所有的除了kNumber里的字符都找出来(包含去空格功能)
NSString *fieldString = [[stringcomponentsSeparatedByCharactersInSet:numberSet]componentsJoinedByString:@""];
NSLog(@"number__[%@]", fieldString);
打印结果:2016-05-05 00:15:01.623 c001[2466:312143] number__[123456789]
NSCharacterSet的各个枚举类型的含义如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
controlCharacterSet
//控制符
whitespaceCharacterSet
whitespaceAndNewlineCharacterSet
//空格换行
decimalDigitCharacterSet
//小数
letterCharacterSet
//文字
lowercaseLetterCharacterSet
//小写字母
uppercaseLetterCharacterSet
//大写字母
nonBaseCharacterSet
//非基础
alphanumericCharacterSet
//字母数字
decomposableCharacterSet
//可分解
illegalCharacterSet
//非法
punctuationCharacterSet
//标点
capitalizedLetterCharacterSet
//大写
symbolCharacterSet
//符号
newlineCharacterSet
//换行符
iOS 6中NSString对象有些新的使用方法,可以让字符串转变成全部大写,全部小写,或者每个单词首字母大写。
代码如下所示:
NSString *str = @"mobile developer tips";
// Convert string to uppercase
NSString *upperStr = [str uppercaseStringWithLocale:[NSLocale currentLocale]];
NSLog(@"upperStr: %@", upperStr);
// Convert string to caps
NSString *capStr = [upperStr capitalizedStringWithLocale:[NSLocale currentLocale]];
NSLog(@"capStr: %@", capStr);
// Convert string to lowercase
NSString *lowerStr = [capStr lowercaseStringWithLocale:[NSLocale currentLocale]];
NSLog(@"lowerStr: %@", lowerStr);
输出内容如下:
|