//字符串的操作
NSString *string10=@"真是日了竹竿了!";
//字符串属性 长度 length
NSUInteger length=[string10 length];
NSLog(@"length=%lu",length);
//字符串的截取
NSString *substring1=[string10 substringToIndex:5];//获取字符串开头到字符串的 to 的位置的字符串内容,不包括to的位置,从0开始算起
NSLog(@"%@",substring1);
NSString *substring2=[string10 substringFromIndex:2];//获取从字符串的from位置到结尾的字符串内容,包含from位置的字符
NSLog(@"%@",substring2);
NSString *substring3=[string10 substringWithRange:NSMakeRange(2, 3)];
NSLog(@"%@",substring3);
//获取字符串中的某个字符
NSString *string11=@"abcdefg";
char c3=[string11 characterAtIndex:0];//根据字符串中的位置 index 来得到一个字符,注意字符串的索引是从0开始的
NSLog(@"%c",c3);
//字符串比较,如何判断两个字符串是否相等
if (substring3==substring2) {
//内容和指针都相等时,才成立
NSLog(@"相等");
}
else
NSLog(@"不相等");
/*
如何才能让两个字符串的指针和内容都相等?
这里需要注意两个概念:浅拷贝 和 深拷贝
浅拷贝:是指源对象与拷贝对象共用一份实体,仅仅是引用的变量名称不同。
深拷贝:是指源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另一个对象造成影响。
在字符串中,[NSString stringWithString:]方法是用于浅拷贝一个现有的字符串产生一个字符串
*/
NSString *substring4=[NSString stringWithString:substring2];
NSString *substring5=[NSString stringWithFormat:@"%@",substring2];
if (substring4==substring2) {
//内容和指针都相等时,才成立
NSLog(@"相等");
}
else
NSLog(@"不相等");
//在实际开发过程中,我们通常只需要比较两个字符串的内容是否相等
if ([substring2 isEqualToString:substring5]) {
NSLog(@"内容相等");
}
else
NSLog(@"内容不相等");
}
//比较两个字符串的大小
NSString *cmpString1=@"he";
NSString *cmpString2=@"ha";
NSComparisonResult result=[cmpString1 compare:cmpString2];
switch (result) {
case NSOrderedAscending:
{
NSLog(@"cmpString1<cmpString2,升序");
}
break;
case NSOrderedSame:
{
NSLog(@"cmpString1=cmpString2");
}
break;
case NSOrderedDescending:
{
NSLog(@"cmpString1>cmpString2,降序");
}
break;
default:
break;
}
//根据字符串拿到对应的range
NSString *string11=@"你是逗逼吗,我都受不了你了";
NSRange ran=[string11 rangeOfString:@"逗逼"];
NSLog(@"%@",[NSValue valueWithRange:ran]);
//只输出第一个遇到该字符串的位置 及 该字符串的长度
NSRange ran1=[string11 rangeOfString:@"受不了"];
NSLog(@"%@",[NSValue valueWithRange:ran1]);
//判断字符串中是否有xx前缀 或 xx后缀
NSString *string12=@"http://www.baidu.com";
if ([string12 hasPrefix:@"http://"]) {
NSLog(@"含有此前缀");
}
else
{
NSLog(@"不含有此前缀");
}
//判断是否为 jpg 或 png 后缀
NSString *string13=@"a123.jpg";
if ([string13 hasSuffix:@".jpg"] || [string13 hasSuffix:@"png"]) {
NSLog(@"含有此后缀");
}
else
{
NSLog(@"不含有此后缀");
}
//字符串的拼接
NSString *string14=@"www.baidu.com";
//直接吧两个字符串连接起来,调用者再前,传进来的字符串在后
NSString *string15=[@"http://" stringByAppendingString:string14];
NSLog(@"string15 = %@",string15);
//图片地址:http://img0.bdstatic.com/img/image/shouye/hbmnp003.jpg
NSString *string17=@"http://img0.bdstatic.com/img/image/shouye";
NSString *string18=@"hbmnp003.jpg";
NSString *string19=[string17 stringByAppendingFormat:@"/%@",string18];//连接两个字符串,并且第二个字符串是按一定格式传进来的
NSLog(@"string19=%@",string19);
NSString *string20=[string17 stringByAppendingPathComponent:string18];
//一般用来拼接地址,而不是拼接网址,/只会出现一个
NSLog(@"string20=%@",string20);
NSString *string21=@"http://img0.bdstatic.com/img/image/shouye/hbmnp003.jpg";
NSString *string22=[string21 lastPathComponent];//读取最后一个/后面的鬼东西
NSLog(@"string22=%@",string22);
NSString *theImageName=@"Rick";
NSString *string23=@"png";
// NSString *string24=[theImageName stringByAppendingFormat:@".%@",string23];
NSString *string24=[theImageName stringByAppendingPathExtension:string23];
//会加点并且拼接
// NSLog(@"%@",string24);
NSLog(@"string24=%@",string24);
//字符串的其他常用方法
//1.字符串的转化函数
NSString *str1=@"111add333";
int a1=[str1 intValue];//只打印字符前面的数字,如果前面有字符则打印出0
float b1=[str1 floatValue];
double c1=[str1 doubleValue];
NSLog(@"%d",a1);
//2.字符串大小写转换函数
NSString *str2=@"aabbCbb";
NSString *str3=[str2 uppercaseString];//将字符全部转化为大写
NSLog(@"str3=%@",str3);
NSString *str4=[str3 lowercaseString];//将字符全部转化为小写
NSLog(@"str4=%@",str4);
NSString *str5=[str2 capitalizedString];//将首个字符改写成大写,其余的都小写
NSLog(@"str5=%@",str5);
//字符串的替换函数
NSString *str6= [str2 stringByReplacingOccurrencesOfString:@"bb" withString:@"dd"];
NSLog(@"str6=%@",str6);
NSString *str7=[str2 stringByReplacingCharactersInRange:NSMakeRange(1, 2) withString:@"cc"];//将原字符串中的range范围内的内容替换成replacement的内容
NSLog(@"str7=%@",str7);
NSString *str8=@"aa-bb-cc-dd-ee";
NSArray *array = [str8 componentsSeparatedByString:@"-"];
//以separator为分隔符,将原字符串的内容进行分割,分割得到的结果放到一个数组里,作为返回值
NSLog(@"array=%@",array);
NSString *string10=@"真是日了竹竿了!";
//字符串属性 长度 length
NSUInteger length=[string10 length];
NSLog(@"length=%lu",length);
//字符串的截取
NSString *substring1=[string10 substringToIndex:5];//获取字符串开头到字符串的 to 的位置的字符串内容,不包括to的位置,从0开始算起
NSLog(@"%@",substring1);
NSString *substring2=[string10 substringFromIndex:2];//获取从字符串的from位置到结尾的字符串内容,包含from位置的字符
NSLog(@"%@",substring2);
NSString *substring3=[string10 substringWithRange:NSMakeRange(2, 3)];
NSLog(@"%@",substring3);
//获取字符串中的某个字符
NSString *string11=@"abcdefg";
char c3=[string11 characterAtIndex:0];//根据字符串中的位置 index 来得到一个字符,注意字符串的索引是从0开始的
NSLog(@"%c",c3);
//字符串比较,如何判断两个字符串是否相等
if (substring3==substring2) {
//内容和指针都相等时,才成立
NSLog(@"相等");
}
else
NSLog(@"不相等");
/*
如何才能让两个字符串的指针和内容都相等?
这里需要注意两个概念:浅拷贝 和 深拷贝
浅拷贝:是指源对象与拷贝对象共用一份实体,仅仅是引用的变量名称不同。
深拷贝:是指源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另一个对象造成影响。
在字符串中,[NSString stringWithString:]方法是用于浅拷贝一个现有的字符串产生一个字符串
*/
NSString *substring4=[NSString stringWithString:substring2];
NSString *substring5=[NSString stringWithFormat:@"%@",substring2];
if (substring4==substring2) {
//内容和指针都相等时,才成立
NSLog(@"相等");
}
else
NSLog(@"不相等");
//在实际开发过程中,我们通常只需要比较两个字符串的内容是否相等
if ([substring2 isEqualToString:substring5]) {
NSLog(@"内容相等");
}
else
NSLog(@"内容不相等");
}
//比较两个字符串的大小
NSString *cmpString1=@"he";
NSString *cmpString2=@"ha";
NSComparisonResult result=[cmpString1 compare:cmpString2];
switch (result) {
case NSOrderedAscending:
{
NSLog(@"cmpString1<cmpString2,升序");
}
break;
case NSOrderedSame:
{
NSLog(@"cmpString1=cmpString2");
}
break;
case NSOrderedDescending:
{
NSLog(@"cmpString1>cmpString2,降序");
}
break;
default:
break;
}
//根据字符串拿到对应的range
NSString *string11=@"你是逗逼吗,我都受不了你了";
NSRange ran=[string11 rangeOfString:@"逗逼"];
NSLog(@"%@",[NSValue valueWithRange:ran]);
//只输出第一个遇到该字符串的位置 及 该字符串的长度
NSRange ran1=[string11 rangeOfString:@"受不了"];
NSLog(@"%@",[NSValue valueWithRange:ran1]);
//判断字符串中是否有xx前缀 或 xx后缀
NSString *string12=@"http://www.baidu.com";
if ([string12 hasPrefix:@"http://"]) {
NSLog(@"含有此前缀");
}
else
{
NSLog(@"不含有此前缀");
}
//判断是否为 jpg 或 png 后缀
NSString *string13=@"a123.jpg";
if ([string13 hasSuffix:@".jpg"] || [string13 hasSuffix:@"png"]) {
NSLog(@"含有此后缀");
}
else
{
NSLog(@"不含有此后缀");
}
//字符串的拼接
NSString *string14=@"www.baidu.com";
//直接吧两个字符串连接起来,调用者再前,传进来的字符串在后
NSString *string15=[@"http://" stringByAppendingString:string14];
NSLog(@"string15 = %@",string15);
//图片地址:http://img0.bdstatic.com/img/image/shouye/hbmnp003.jpg
NSString *string17=@"http://img0.bdstatic.com/img/image/shouye";
NSString *string18=@"hbmnp003.jpg";
NSString *string19=[string17 stringByAppendingFormat:@"/%@",string18];//连接两个字符串,并且第二个字符串是按一定格式传进来的
NSLog(@"string19=%@",string19);
NSString *string20=[string17 stringByAppendingPathComponent:string18];
//一般用来拼接地址,而不是拼接网址,/只会出现一个
NSLog(@"string20=%@",string20);
NSString *string21=@"http://img0.bdstatic.com/img/image/shouye/hbmnp003.jpg";
NSString *string22=[string21 lastPathComponent];//读取最后一个/后面的鬼东西
NSLog(@"string22=%@",string22);
NSString *theImageName=@"Rick";
NSString *string23=@"png";
// NSString *string24=[theImageName stringByAppendingFormat:@".%@",string23];
NSString *string24=[theImageName stringByAppendingPathExtension:string23];
//会加点并且拼接
// NSLog(@"%@",string24);
NSLog(@"string24=%@",string24);
//字符串的其他常用方法
//1.字符串的转化函数
NSString *str1=@"111add333";
int a1=[str1 intValue];//只打印字符前面的数字,如果前面有字符则打印出0
float b1=[str1 floatValue];
double c1=[str1 doubleValue];
NSLog(@"%d",a1);
//2.字符串大小写转换函数
NSString *str2=@"aabbCbb";
NSString *str3=[str2 uppercaseString];//将字符全部转化为大写
NSLog(@"str3=%@",str3);
NSString *str4=[str3 lowercaseString];//将字符全部转化为小写
NSLog(@"str4=%@",str4);
NSString *str5=[str2 capitalizedString];//将首个字符改写成大写,其余的都小写
NSLog(@"str5=%@",str5);
//字符串的替换函数
NSString *str6= [str2 stringByReplacingOccurrencesOfString:@"bb" withString:@"dd"];
NSLog(@"str6=%@",str6);
NSString *str7=[str2 stringByReplacingCharactersInRange:NSMakeRange(1, 2) withString:@"cc"];//将原字符串中的range范围内的内容替换成replacement的内容
NSLog(@"str7=%@",str7);
NSString *str8=@"aa-bb-cc-dd-ee";
NSArray *array = [str8 componentsSeparatedByString:@"-"];
//以separator为分隔符,将原字符串的内容进行分割,分割得到的结果放到一个数组里,作为返回值
NSLog(@"array=%@",array);