- (void)viewDidLoad {
[superviewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
#pragma mark----字符串与基本数据类型转换------------------
NSString *aa=@"123";
int b=[aaintValue];
float b2=[aafloatValue];
BOOL b3 = [aaboolValue];//将 aa 转换为 布尔型(true / false)
NSInteger b4 = [aaintegerValue]; //将 aa转换为整数型
long b5 = [aalongLongValue];//将 aa转换为长整型
#pragma mark---- 字符串的截取,删除,查找-------
// 字符串截取到第n位 (substringToIndex: n)(第n位不算再内)
NSString *a =@"i like long dress";
NSString *C = [asubstringToIndex:4];
// 字符串从第n 位开始截取,直到最后 (substringFromIndex:n)(包括第 n位)
NSString *C2 = [asubstringFromIndex:4];
NSMutableString *C3 = [[NSMutableString alloc]initWithString:@"123456798"];
//可变字符串删除中间字符
[C3 deleteCharactersInRange:NSMakeRange(1,2)];
[C3 replaceCharactersInRange:NSMakeRange(1,2)withString:@"A"];
NSLog(@" \n a: %@\n",C3);
NSRange tmprange =[C3rangeOfString:@"A"];
//字符串的查找
if (tmprange.location!=NSNotFound) {
NSLog(@"tmprange=%@",NSStringFromRange(tmprange));
}else {
NSLog(@"没有找到");
}
#pragma mark----数组字符串转换方式(1)(有分割符)----
#pragma mark---字符串转数组
//定义一个字符串
NSMutableString * str=[[NSMutableStringalloc]initWithFormat:@"1,1,1,1,1,1"];
//字符串根据逗号分隔符转换为不可变数组
NSArray *arr=[strcomponentsSeparatedByString:@","];
//字符串转变为可变数组
NSMutableArray * array=[NSMutableArrayarrayWithArray:[str componentsSeparatedByString:@","]];
//替换数组中的第四个元素的个值
[array replaceObjectAtIndex:4withObject:@"2"];
#pragma mark---数组转字符串
//把数组转换成字符串
NSString *ns=[arraycomponentsJoinedByString:@","];
//将字符串整体作为分割条件返回值为NSArray不可变数组
// NSArray * array = [num componentsSeparatedByString:@" "];
//若修改,则将NSArray转化为NSMutableArray
NSMutableArray * array1 = [NSMutableArrayarrayWithArray:array];
NSArray * array2 = [nscomponentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@", "]];//以字符串中的字符作为分割条件进行分割
#pragma mark----数组字符串转换方式(2)(无分割符)----
//(1)通过查找的方式来(这方式适合所有格式的子符串,推荐使用)
//遍历字符串得到的是字符串
NSString *newStr =@"abcd1234tang";
NSString *temp =nil;
NSMutableArray *newArr=[[NSMutableArrayalloc]init];
for(int i =0; i < [newStrlength]; i++)
{
temp = [newStrsubstringWithRange:NSMakeRange(i,1)];
NSLog(@"第%d个字是:%@",i,temp);
[newArraddObject:temp];
}
// (2)通过遍历字符的方式遍历字符串(只适合不包含中文的字符串)
//遍历字符串得到的是字符,不能添加到数组中
NSString *newStr2 =@"zheng345";
unichar temp2;
for(int i =0; i < [newStr2length]; i++)
{
temp2=[newStr2characterAtIndex:i];
NSLog(@"第%d个字符是:%hu",i, [newStr2 characterAtIndex:i]);
}
// 字符串替换
//stringByReplacingCharactersInRange:range
NSString *string =@"this is my name";
for (int i =0; i<[stringlength]; i++) {
//截取字符串中的每一个字符
NSString *s = [stringsubstringWithRange:NSMakeRange(i,1)];
NSLog(@"string is %@",s);
if ([sisEqualToString:@"m"]) {
NSRange range =NSMakeRange(i,1);
//将字符串中的“m”转化为“w”
string = [string stringByReplacingCharactersInRange:rangewithString:@"w"];
}
}
NSLog(@"%@",string);
// 字符串转ascii码
NSString *stringValue=[NSStringstringWithFormat:@"01000435"];
NSString * str2 = [stringValuesubstringWithRange:NSMakeRange(0,2)];
NSInteger ar = [strintegerValue];
char br = (char)(ar+64);
#pragma mark------ NSString ,int,char,unichar ascii码互相转换--------
// string 转成 char(1):
char mychar[100];
NSString * mystring=@"h";
strcpy(mychar,(char *)[mystringUTF8String]);
//NSString to ASCII
NSString *stringA =@"A";
int asciiCodeA = [stringAcharacterAtIndex:0];// 65
// ASCII to NSString (int char To NSString)
int asciiCodeB =65;
char asciiCodeB2=65;
NSString *stringB = [NSStringstringWithFormat:@"%c", asciiCodeB];// A
int i;
#pragma mark---根据ascii码得到对应字符
for (int i =0 ; i <26 ; i ++) {
unichar ch = i+65;
//char[]转NSString简单的方法
NSString *str = [NSStringstringWithUTF8String:(constchar *)&ch];
//NSLog(@"=========%@",str);
//NSLog(@"-----------%d",i);
}
// ASCII ASCII to NSString(2)
// (int) NSString to
NSString *result=@"010000317";
NSString *head=[resultsubstringWithRange:NSMakeRange(0,2)];
int asciiCode = [headintValue]+64;
NSString *asciiToString = [NSStringstringWithFormat:@"%c", asciiCode];// A
//
#pragma mark---------c语言字符串转成oc字符串---------
char *Cstring ="This is a String!"; //C语言字符串
NSString *astring = [[NSStringalloc]initWithCString:Cstring]; //转换
}
//判断字符串是否是整型:
+ (BOOL)isPureInt:(NSString*)string{
NSScanner* scan = [NSScannerscannerWithString:string];
int val;
return[scanscanInt:&val] && [scanisAtEnd];
}
//判断字符串是否为浮点型:
+(BOOL)isPureFloat:(NSString*)string{
NSScanner* scan = [NSScannerscannerWithString:string];
float val;
return[scanscanFloat:&val] && [scanisAtEnd];
}
github代码地址 https://github.com/tangzhengzheng1991/testNSString