搜索
您的当前位置:首页正文

iOS开发之 必不可少的NSString 处理大全!

来源:二三娱乐

在iOS开发过程中,对于字符串的处理必不可少。无论是展示给用户看到的字符串效果,抑或是对用户输入的字符串处理,无处不在的字符串考验着每个开发者的基本功。

神奇化易是坦道,易化神奇不足提!话不多说,上代码:

一:截取字符串

//自定义范围截取字符串NSMakeRange(开始的位置,截取的长度)[@"0123456"substringWithRange:NSMakeRange(1,2)];//结果为:12

//从给定的下标开始截取到最后,包括给出的下标     [@"0123456"substringFromIndex:3];//结果为:3456

//从字符串的第一个字符截取到给定的下标,不包括给出的下标     [@"0123456"substringToIndex:3];//结果:012

二:替换拼接

//"a"替换字符串中出现的所有"1"[@"123321"stringByReplacingOccurrencesOfString:@"1"withString:@"a"];//结果:a2332a

在用户输入的时候 很有可能会多出来空格,使用这个方法可以很方便的去除字符串中的所有空格.

[stringstringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceCharacterSet]];这个方法则只能去除字符串开头的空格,当然它也有自己的优势,可以根据自己的需求使用。

//此方法用给定的字符串替换选中的范围内的字符串,既“a”替换“23”

[@"0123456"stringByReplacingCharactersInRange:NSMakeRange(2,2)withString:@"a"];//结果:01a456

字符串的拼接比较简单,这里就介绍几个比较典型的:

//这个方法用“123”分别拼接后面数组的里每一个字符串,拼接的时候在两个字符串间加上

[@"123"stringsByAppendingPaths:@[@"456",@"789"]];//结果"123/456","123/789"

//结果:123/456 多用于路径的拼接

[@"123"stringByAppendingPathComponent:@"456"];

//结果:123.456 多用于扩展名的拼接

[@"123"stringByAppendingPathExtension:@"456"];

三:判断字符串是否有某一个字符

方法一:

//查询字符串中是否有某个自符

NSString*str =@"asddsadfg";

for(inti =0; i < str.length; i ++) {

//这个方法是搜寻字符串中是否有某个字符并返回一个nsrang

NSRange range = [str rangeOfString:@"d"];

if(range.location!=NSNotFound) {

NSLog(@"range == %@ ",NSStringFromRange(range));

str = [strstringByReplacingCharactersInRange:rangewithString:@"\a"];

NSLog(@"str== %@",str);

}

}

方法二:(还可以判断字符串中是否有某一类型的字符)

NSString*string =@"1UcccUcc10";

for(inti =0; i < string.length; i ++) {

charcstr = [stringcharacterAtIndex:i];

BOOLbl = [[NSCharacterSetuppercaseLetterCharacterSet]characterIsMember:cstr];

if(bl) {

NSLog(@"");

}else{

NSLog(@"没有");

}

}

判断一整个字符串是否是 某个类型的

int a ;

NSScanner*scan = [NSScannerscannerWithString:@"123"];

NSLog(@"result==%d",[scanscanInt:&a]&& [scanisAtEnd] );

富文本

//字符串的attributed

NSMutableAttributedString*attributeStr = [[NSMutableAttributedStringalloc]initWithString:@"我爱学习,学习爱我!"];

NSRangeredRange =NSMakeRange(0,4);

[attributeStr addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:redRange];

效果图

字符串和 结构体的 相互转换

FOUNDATION_EXPORTNSString*NSStringFromRange(NSRangerange);

FOUNDATION_EXPORTNSString*NSStringFromPoint(NSPointaPoint);

FOUNDATION_EXPORTNSString*NSStringFromSize(NSSizeaSize);

FOUNDATION_EXPORTNSString*NSStringFromRect(NSRectaRect);

FOUNDATION_EXPORTNSRangeNSRangeFromString(NSString*aString);

FOUNDATION_EXPORTNSPointNSPointFromString(NSString*aString);

FOUNDATION_EXPORTNSSizeNSSizeFromString(NSString*aString);

FOUNDATION_EXPORTNSRectNSRectFromString(NSString*aString);

Top