IOS——字符串常用属性

1、字符串拼接 

  NSString* string; // 结果字符串

    NSString* string1 = @"woshiztq"; //已存在的字符串,需要将string1和string2连接起来

    NSString *string2=  @"13456";

    //方法1.

    string = [NSString stringWithFormat:@"%@%@", string1, string2 ];

     //方法2

    string = [string1 stringByAppendingString:string2];

    //方法3 .

    string = [string stringByAppendingFormat:@"%@%@",string1, string2];

   /*--------在已有字符串中按照所给出范围和长度删除字符------*/  

 [String1 deleteCharactersInRange:NSMakeRange(0, 5)];  

   /*--------在已有字符串后面在所指定的位置中插入给出的字符串------*/  

 [String1 insertString:@"Hi! " atIndex:0];

 

2、字符串截取

   NSString *string2 = [string1 substringToIndex:3];     //    从字符串的开头一直截取到指定的位置,但不包括该位置的字符  (就是截取前n个字符)

   NSString *string2 = [string1 substringFromIndex:3];   //   以指定位置开始(包括指定位置的字符),并包括之后的全部字符 (截取除掉前n个的所有字符)

  NSString *string2 = [string1 substringWithRange:NSMakeRange(0, 4)];      //按照所给出的位置,长度,任意地从字符串中截取子串  

 

3、字符串比较和判断

  BOOL result = [astring01 compare:astring02  
                            options:NSCaseInsensitiveSearch | NSNumericSearch] = = NSOrderedSame;       //不考虑大小写比较字符串2  

 newKeys = [string  sortedArrayUsingComparator:result];  //  字符串大小排序

NSArray *array1=[str1 componentsSeparatedByString:@"."];//字符串分割

/*-------------判断字符串内是否还包含别的字符串(前缀,后缀)-------------*/  
    NSString *String1 = @"NSStringInformation.txt";  
    [String1 hasPrefix:@"NSString"] = = 1 ?  NSLog(@"YES") : NSLog(@"NO");  
    [String1 hasSuffix:@".txt"] = = 1 ?  NSLog(@"YES") : NSLog(@"NO");  
      

 

4、字符串 文件操作

//读取文件内容

NSString *path=@"/Users/kenshincui/Desktop/test.txt"; NSString *str1=[NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];

//由于我们的test.txt中有中文,所以使用下面的编码读取会报错,下面的代码演示了错误获取的过程

NSError *error; NSString *str2=[NSString stringWithContentsOfFile:path encoding:kCFStringEncodingGB_18030_2000 error:&error];//注意这句话中的error变量是**error,就是指针的指针那就是指针的地址,由于error就是一个指针此处也就是error的地址&error,

if(error){ NSLog(@"read error ,the error is %@",error); }

else{ NSLog(@"read success,the file content is %@",str2); }

//读取文件内容还有一种方式就是利用URl,它除了可以读取本地文件还可以读取网络文件

//NSURL *url=[NSURL URLWithString:@"file:///Users/kenshincui/Desktop/test.txt"];

NSURL *url=[NSURL URLWithString:@"http://www.apple.com"];

NSString *str3=[NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];

//下面是文件写入

NSString *path1=@"/Users/kenshincui/Desktop/test2.txt";

NSError *error1; NSString *str11=@"hello world,世界你好!";

[str11 writeToFile:path1 atomically:YES encoding:NSUTF8StringEncoding error:&error1];//automically代表一次性写入,如果写到中间出错了最后就全部不写入

if(error1){ NSLog(@"write fail,the error is %@",[error1 localizedDescription]);//调用localizedDescription是只打印关键错误信息 }

else{ NSLog(@"write success!"); }

5、可变字符串

/*--------将已有的空符串换成其它的字符串------*/  
      
    NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];  
    [String1 setString:@"Hello Word!"];  

  /*--------按照所给出的范围,和字符串替换的原有的字符------*/  
      
    //-setString:  
    NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];  
    [String1 replaceCharactersInRange:NSMakeRange(0, 4) withString:@"That"];  
    NSLog(@"String1:%@",String1);  
      

 

6、去除字符串中的某些字符
NSString *string1 = @"<p>讨厌的节点<br/></p>";
 
/*此处将不想要的字符全部放进characterSet1中,不需另外加逗号或空格之类的,除非字符串中有你想要去除的空格,此处< p /等都是单独存在,不作为整个字符*/
 
NSCharacterSet *characterSet1 = [NSCharacterSet characterSetWithCharactersInString:@"<p/brh>"];
 
// 将string1按characterSet1中的元素分割成数组
 
NSArray *array1 = [string1 componentsSeparatedByCharactersInSet:characterSet1];
 
NSLog(@"array = %@",array1);
 
for(NSString *string1 in array1)
{
    if ([string1 length]>0) {
         
        // 此处string即为中文字符串
 
        NSLog(@"string = %@",string1);
    }
}

转载于:https://www.cnblogs.com/tengquanzhou/p/4889771.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值