iOS之NSStirng使用集合、NSCharacterSet

1.返回类的字符串或方法名字符串



============2.将array数组转换为string字符串

 NSString *tempString = [mutableArray componentsJoinedByString:@","];--以逗号为分隔符



==========3.

 NSString *str=[[NSStringalloc]initWithData:responseObjectencoding:NSUTF8StringEncoding];//网页二进制数据转换成字符串








=================3.自定义NSCharacterSet

NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:@"@/:;()¥「」"、[]{}#%-*+=_\\|~<>$€^•'@#$%^&*()_+'\""];


=====================4.去除字符串中的特殊字符

NSString *temptext = [messageTextField.textstringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceCharacterSet]];//去除两端的空格
NSString *text = [temptext stringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceAndNewlineCharacterSet ]];//去除回车。


==============字典转成JSON字符串======

NSDictionary *fukuanjson ;

 NSData *jsonData = [NSJSONSerialization dataWithJSONObject:fukuanjson options:NSJSONWritingPrettyPrinted error:nil];

            

            NSString *jsonStr=[[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];


===============字符串==========

//1、创建常量字符串。

NSString *astring =@"This is a String!";


//2、创建空字符串,给予赋值。

NSString *astring = [[NSString alloc] init];


astring = @"This is a String!";


[astring release];


NSLog(@"astring:%@",astring);


//


NSString *astring = [[NSString alloc] init];


NSLog(@"0x%.8x", astring);


astring=@"This is a String!";


NSLog(@"0x%.8x", astring);




NSLog(@"astring:%@",astring);



//3、在以上方法中,提升速度:initWithString方法

NSString *astring = [[NSString alloc] initWithString:@"This is a String!"];


NSLog(@"astring:%@",astring);




//4、用标准c创建字符串:initWithCString方法


char *Cstring = "This is a String!";


NSString *astring = [[NSString alloc] initWithCString:Cstring];


NSLog(@"astring:%@",astring);



//5、创建格式化字符串:占位符(由一个%加一个字符组成)


int i = 1;


int j = 2;


NSString *astring = [[NSString alloc] initWithString:[NSString stringWithFormat:@"%d.This is %i string!",i,j]];


NSLog(@"astring:%@",astring);




//6、创建临时字符串

NSString *astring;


astring = [NSString stringWithCString:"This is a temporary string"];


NSLog(@"astring:%@",astring);


//7、从文件创建字符串


NSString *path = [[NSBundlemainBundle] pathForResource:@"astring.text"ofType:nil];

NSString *astring = [[NSString alloc] initWithContentsOfFile:path];

NSLog(@"astring:%@",astring);

[astring release];


//8、用字符串创建字符串,并写入到文件



NSString *astring = [[NSString alloc] initWithString:@"This is a String!"];


NSLog(@"astring:%@",astring);


NSString *path = @"astring.text";


[astring writeToFile: path atomically: YES];



注:此路径path只只是示意,真实路径并非如此


//9、用C比较:strcmp函数

char string1[] ="string!";


char string2[] = "string!";


if(strcmp(string1, string2) == 0)

{

    

    NSLog(@"1");

    

}


//10isEqualToString方法


NSString *astring01 =@"This is a String!";


NSString *astring02 =@"This is a String!";


BOOL result = [astring01isEqualToString:astring02];


NSLog(@"result:%d",result);


//11compare方法(comparer返回的三种值)


//

NSString *astring01 =@"This is a String!";


NSString *astring02 =@"This is a String!";


BOOL result = [astring01 compare:astring02] == NSOrderedSame;   //NSOrderedSame判断两者内容是否相同


NSLog(@"result:%d",result);


//

NSString *astring01 =@"This is a String!";


NSString *astring02 =@"this is a String!";


BOOL result = [astring01 compare:astring02] == NSOrderedAscending;   //NSOrderedAscending判断两对象值的大小(按字母顺序进行比较,astring02大于astring01为真)


NSLog(@"result:%d",result);


//

NSString *astring01 =@"this is a String!";


NSString *astring02 =@"This is a String!";


BOOL result = [astring01 compare:astring02] == NSOrderedDescending;   //NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)


NSLog(@"result:%d",result);



//12、不考虑大小写比较字符串


//1.

NSString *astring01 =@"this is a String!";


NSString *astring02 =@"This is a String!";


BOOL result = [astring01 caseInsensitiveCompare:astring02] == NSOrderedSame;   //NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)


NSLog(@"result:%d",result);


//2.

NSString *astring01 =@"this is a String!";


NSString *astring02 =@"This is a String!";


BOOL result = [astring01 compare:astring02

               

                         options:NSCaseInsensitiveSearch | NSNumericSearch] == NSOrderedSame;   //NSCaseInsensitiveSearch:不区分大小写比较 NSLiteralSearch:进行完全比较,区分大小写 NSNumericSearch:比较字符串的字符个数,而不是字符值。


NSLog(@"result:%d",result);


//13、输出大写或者小写字符串

NSString *string1 =@"A String";


NSString *string2 = @"String";


NSLog(@"string1:%@",[string1 uppercaseString]);//大写


NSLog(@"string2:%@",[string2 lowercaseString]);//小写


NSLog(@"string2:%@",[string2 capitalizedString]);//首字母大小


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



NSString *string1 =@"This is a string";


NSString *string2 = @"string";


NSRange range = [string1 rangeOfString:string2];


int location = range.location;


int leight = range.length;


NSString *astring = [[NSString alloc] initWithString:[NSString stringWithFormat:@"Location:%i,Leight:%i",location,leight]];


NSLog(@"astring:%@",astring);




//15-substringToIndex:从字符串的开头一直截取到指定的位置,(但不包括该位置的字符)


NSString *string1 = @"This is a string";


NSString *string2 = [string1 substringToIndex:3];


NSLog(@"string2:%@",string2);


//16-substringFromIndex:以指定位置开始(包括指定位置的字符),并包括之后的全部字符


NSString *string1 =@"This is a string";


NSString *string2 = [string1 substringFromIndex:3];


NSLog(@"string2:%@",string2);


//17-substringWithRange: //按照所给出的位置,长度,任意地从字符串中截取子串


NSString *string1 =@"This is a string";


NSString *string2 = [string1 substringWithRange:NSMakeRange(0, 4)];


NSLog(@"string2:%@",string2);


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


NSMutableString *String;


String = [NSMutableString stringWithCapacity:40];


//19-appendString: and -appendFormat: //把一个字符串接在另一个字符串的末尾


NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];


[String1 appendString:@", I will be adding some character"];


[String1 appendFormat:[NSString stringWithFormat:@", I will be adding some character"]];


NSLog(@"String1:%@",String1);



//20-insertString: atIndex: //在指定位置插入字符串

NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];


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


NSLog(@"String1:%@",String1);


//21-setString:

NSMutableString *String1 = [[NSMutableStringalloc]initWithString:@"This is a NSMutableString"];


[String1 setString:@"Hello Word!"];


NSLog(@"String1:%@",String1);


//22-replaceCharactersInRange: withString: //用指定字符串替换字符串中某指定位置、长度的字符串

NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];


[String1 replaceCharactersInRange:NSMakeRange(0, 4) withString:@"That"];


NSLog(@"String1:%@",String1);


//23-hasPrefix: //检查字符串是否以另一个字符串开头

NSString *String1 =@"NSStringInformation.txt";


[String1 hasPrefix:@"NSString"] = = 1 ? NSLog(@"YES") :NSLog(@"NO");


[String1 hasSuffix:@".txt"] = = 1 ? NSLog(@"YES") :NSLog(@"NO");


//24、扩展路径


NSString *Path = @"~/NSData.txt";


NSString *absolutePath = [Path stringByExpandingTildeInPath];


NSLog(@"absolutePath:%@",absolutePath);


NSLog(@"Path:%@",[absolutePath stringByAbbreviatingWithTildeInPath]);



//25、文件扩展名


NSString *Path = @"~/NSData.txt";


NSLog(@"Extension:%@",[Path pathExtension]);


=======删除字符串中的某个字符========

self.textStore是可变字符串;

 NSRange theRange =NSMakeRange(self.textStore.length - 1, 1);

    [self.textStoredeleteCharactersInRange:theRange];//删除字符串中的某个字符


===========

=======只获取数字:

 NSString *pureNumbers = [[self.phonenum.text componentsSeparatedByCharactersInSet:[[NSCharacterSet characterSetWithCharactersInString:@"0123456789"] invertedSet]] componentsJoinedByString:@""];


********删除字符串中所有空格******

NSString *str =[NSStringstringWithFormat:@"  sssd  "];

str = [str stringByReplacingOccurrencesOfString:@" " withString:@""];

**********删除字符串两端的空格

NSString *str  = [NSStringstringWithFormat:@"    sda  sda    "];

str = [str stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];



iOS 找到字符串中指定的多个字符串的位置

 通过查找的方式来(这方式适合所有格式的子符串,推荐使用) 

   NSString *newStr = @"AbdcdddccddA00";    NSString *temp = nil; 

   for(int i =0; i < [newStr length]; i++)   

 {       

       temp = [newStr substringWithRange:NSMakeRange(i, 1)];

​        if ([temp isEqualToString:@"A"])

 {            NSLog(@"第%d个字是:%@", i, temp);   

     }   

 }  

==========吧字符串中的每个字符转换成ASCII码值放入数组==

NSMutableArray *array = [[NSMutableArray alloc] init];
NSString *str = @"password";
NSUInteger len = [str length];
for(NSUInteger i=0; i<len; i++)
{
[array addObject:[NSNumber numberWithChar:[str characterAtIndex:i]]];//数组中存的是ASCII码值


[NSString stringWithFormat:@"%c",[phonenumStr characterAtIndex:i]];//acii码转换成字符串


======遍历字符串的每一个字符====

NSString *string =@"this is my name";


for (int i = 0; i<[string length]; i++) {

    //截取字符串中的每一个字符

    NSString *s = [string substringWithRange:NSMakeRange(i, 1)];

    NSLog(@"string is %@",s);

    if ([s isEqualToString:@"m"]) {

        NSRange range = NSMakeRange(i, 1);

        //将字符串中的“m”转化为“w”

        string =   [string stringByReplacingCharactersInRange:range withString:@"w"];

        

    }

}

NSLog(@"%@",string);


======= // 取出字符串中的数字=======

 //取出字符串中的数字


    /** ---------------------------------------------------------------------------*/

第一种:

字符串: urlString

    NSScanner *scanner = [NSScanner scannerWithString:urlString];

    [scanner scanUpToCharactersFromSet:[NSCharacterSet decimalDigitCharacterSetintoString:nil];

    

    int number;

    [scanner scanInt:&number];    

    NSString *num=[NSString stringWithFormat:@"%d",number];

    

    /** ---------------------------------------------------------------------------*/

第二种:


字符串: urlString


    NSCharacterSet* nonDigits =[[NSCharacterSet decimalDigitCharacterSetinvertedSet];

    int remainSecond =[[urlString stringByTrimmingCharactersInSet:nonDigits] intValue];

    NSLog(@" num %d ",remainSecond);


=========s'tingappendBystring不起作用后,选择先把字符串分解添加到数组,在拼接数组的元素=====

 NSMutableArray *phstrArr=[[NSMutableArrayalloc]init];

    NSString *phstr=@"";


 NSString *phonenumStr=@“13333358d6”;

        NSUInteger len = [phonenumStrlength];

        for(NSUInteger i=0; i<len; i++)

        {

            NSString *c=[NSStringstringWithFormat:@"%c",[phonenumStrcharacterAtIndex:i]];

            if([cisEqualToString:@"0"] ||[cisEqualToString:@"1"] ||[cisEqualToString:@"2"] ||[cisEqualToString:@"3"] ||[cisEqualToString:@"4"] ||[cisEqualToString:@"5"] ||[cisEqualToString:@"6"] ||[cisEqualToString:@"7"] ||[cisEqualToString:@"8"] ||[cisEqualToString:@"9"] ){

              

                [phstrArr addObject:c];

                 NSLog(@"-zifu--%@", [NSString stringWithFormat:@"%c",[phonenumStr characterAtIndex:i]]);

            }

           

        }

        

        phstr=[phstrArr componentsJoinedByString:@""];

        NSLog(@"-拼接后--%@",phstr);

        

     

============
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值