NSString的总结(随笔)
NSString的总结(随笔)
Who_Care_Who 发表于3年前
NSString的总结(随笔)
  • 发表于 3年前
  • 阅读 8
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: 对NSString进行一下总结,也是自己以后温故而知新! 字符串分为可变(NSMutableString)和不可变字符串(NSString)只写了部分,以后会继续添加,当然也有可能会有错误,新手请大家指教
//首先是NSString的创建方式,常用的有几种:

//1.创建常量字符串

NSString *str1 = @"this is a first style";

//2.创建格式化字符串:占位符(有一个%加一个字符组成)

NSString *_name3 = [[NSString alloc]initWithFormat:@"我爱%@",_name];//格式化输出一个字符串 ,不定参数。

NSString *p = [NSString stringWithFormat:@"sianca"];

//3.从文件创建字符串

NSString *astring = [[NSString alloc] initWithConnectOfFile:[[NSbundle mainbundle] pathForRescource:@"1.txt"ofType:nil] ecoding:NSUTF8StringEcoding error:nil];

//4.返回字符串的长度

NSUInteger p = [astring length];

//5.返回一个字符,输入此字符在字符串中得下标,注意从0开始

unichar m = [astring characterAtIndex:1];

//6.获取一个字符串的子串(不同的位置不同的方法,有一下三种)

  //首先是获取任意位置的字符串的子串
  
  NSString *substr = [astring substringWithRange:NSMakeRange(2,7)];
  
  //从一个指定位置一直到结束,且包含这个位置
  
  NSString *substr = [astring substringFromIndex:1];
  
  //从开始一个到指定的位置,但不包含这个位置
  
  NSString *substr = [astring substringToIndex:2];
  
 //7.hasPrefix判断指定的字符串是否以此字母开始  hasSuffix 判断此字符串是否是以此字母结尾
 
 NSString *ps = @"qwesdsa";
 
 BOOL bi = [ps hasPrefix:@"qw"];这个结果返回YES
 
 BOOL bj = [ps hasPrefix:@"ss"];这个结果返回NO;
 
 //8.比较两个字符串compare:如果第一个字符串大于第二个字符串返回1,等于返回0,小于返回-1  
 
     long num = [ps1 compare:ps2];这个比较不区分大小写
     
     long num1 = [ps1 caseInsensitiveCompare:ps2];这个区分大小写
     
 
     //比较两个字符串是否相等,返回一个BOOL
     
     BOOL b = [ps1 isEqualToString:ps2];
     
//9.字符串的拼接

NSString *str1 = @"hello";

NSString *str2 = @"word";

NSMutableString *str3 = [str1 stringByAppendingString:str2];

//10.输出大写或小写的字符串

NSString *str1 = @"sdaQ";

NSLog(@"str1:%@",[str1 upppercaseString])//全部大写

NSlog (@"str1:%@",[str1 lowercaseString])//全部小写

NSLog (@"str1:%@",[str1 capitalizedString])//首字母大写

//11.-rangeOfString: //查找字符串某处是否包含其它字符串

NSString *string1 = @"This is a string";
 
NSString *string2 = @"string";
 
NSRange range = [string1 rangeOfString:string2];

//12.可变字符串和不可变字符串的创建大同小异,有一个区别,如下:

NSMutableString *mstr1 = @"asdsad",mutableCopy;

//13.可变字符串的一些操作

[mstr1 appendString:@"ssasd"];//在字符串结尾增加一个字符串

[mstr1 insretString:@"sdas" atIndex:2];//在字符串第三个位置插入一个字符串

[mstr1 deleteCharacterInRange:NSMakeRange(1,3)];//删除字符串

[mstr1 replaceCharacterInRangeL:NSMakeRange(2,5) withString:@"12345"];

//14.-stringWithCapacity: //按照固定长度生成空字符串

NSMutableString *String = [NSMutableString stringWithCapacity:40];

//15. -setString 字符串的全部替代

NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];
 
[String1 setString:@"Hello Word!"];
 
NSLog(@"String1:%@",String1)

//16、扩展路径

NSString *Path = @"~/NSData.txt";
 
NSString *absolutePath = [Path stringByExpandingTildeInPath];
 
NSLog(@"absolutePath:%@",absolutePath);
 
NSLog(@"Path:%@",[absolutePath stringByAbbreviatingWithTildeInPath]);
 
//17、文件扩展名

NSString *Path = @"~/NSData.txt";
 
NSLog(@"Extension:%@",[Path pathExtension])

//顺便说一下description方法,description方法是基类NSObject 所带的方法,在自定义的类中,我们可以重载改方法

-(NSString *)description()
{
     return [NSString stringWithFormat:@"姓名: %@ 年龄: %d",name,age];
}

//18.下面一段代码是实现字符串首尾交换的:

NSString *str = @"xiaomingnihao";
    
    NSUInteger c = [str length];
    
    NSMutableString *mstr = [NSMutableString stringWithCapacity:c];
    
    while (c != 0)
    {
        unichar cha = [str characterAtIndex: --c];
        
        NSString *str1 = [NSString stringWithFormat:@"%C",cha];
        
        [mstr appendString:str1];
    }
    
    NSLog(@“%@",mstr);

//19.这个是这个字符串特定符号下得切割后放入数组中

  NSString *temp = [NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"name" ofType:@"txt"] encoding:NSUTF8StringEncoding error:nil];

  NSMutableArray  *arr = [temp componentsSeparatedByString:@"\n"].mutableCopy;


共有 人打赏支持
粉丝 2
博文 69
码字总数 28284
×
Who_Care_Who
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: