NSString 常用方法

一、NSString初始化(创建)

1、//最简单粗暴创建方式

  NSString * str = @"hello world";    //创建了一个字符串,@"hello world"返回了一个地址,h的地址

2、//使用一个字符串去初始化另外一个字符串

  NSString * str1 = [[NSString alloc] initWithString:str];

  NSLog(@"%@",str1);

3、//使用数据拼接方式去初始化一个字符串

  NSString * str2 = [[NSString alloc] initWithFormat:@"%d%c and%s%.2f",10,'A',"hhh",2.9];


4、//将一个C的字符串转化成为字符串

  NSString *str3 = [[NSString alloc] initWithUTF8String:"c语言字符串"];

5、//将一个文件的内容转化成为字符串

/*第一参数:文件路径

  第二参数:编码方式(NSUTF8StringEncoding

  第三个参数:错误信息 nil)*/

  NSString * str4 = [[NSString alloc] initWithContentsOfFile:@"/Users/mingge/Desktop/mingzi.txt" encoding:NSUTF8StringEncoding error:nil];

6、使用类方法初始化一个字符串与上面方法类似


二、NSString使用

#pragma mark ----字符串转换成其他数据类型--

    NSString* str = @"89a13saa487jhsjd";

//将字符串转换成 double

    double strDouble = [str doubleValue];

//将字符串转换成 float

    float strFloat = [str floatValue];

//将字符串转换成 int

    int strInt = [str intValue];

//将字符串转换成long/NSInteger

    NSInteger strInteger = [str integerValue];

//将字符串转换成long long类型

    long long strLong = [str longLongValue];        

//BOOL类型是OC独有的,只有两个值:YES(1) NO(0)

    BOOL strBool = [str boolValue];

    NSLog(@"%d",strBool);

#pragma mark ----大小写转换--

    NSString * str1 = [NSString stringWithFormat:@"%s","askHHHfjks"];

//- (NSString *)uppercaseString;

//将字符串中所有的小写字母转换成大写字母

    NSString * str2 = [str1 uppercaseString];

//- (NSString *)lowercaseString;

//将字符串中所有的大写字母转换成小写字母

    NSString * str3 = [str1 lowercaseString];

//- (NSString *)capitalizedString

//将字符串首字母大写,其他的字母全部变成小写

    NSString * str4 = [str1 capitalizedString];

#pragma mark 字符串长度

    NSString * str5 = @"akhdjkfhsj";

//- (NSUInteger)length;

    NSUInteger lenth = [str5 length];

#pragma mark 返回单个字符

//- (unichar)characterAtIndex:(NSUInteger)index;

//char C语言的字符一个字节  unicharOC的字符,两个字节

    unichar strchar =  [str5 characterAtIndex:2];

    NSLog(@"%ld",sizeof(unichar));

    NSLog(@"%c",strchar);

    //遍历字符串中的每一个字符

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

        unichar tChar = [str5 characterAtIndex:i];

        NSLog(@"%c",tChar);

    }

#pragma mark 比较两个字符串

    NSString * str6 = @"acahhhh";

    NSString * str7 = @"abahhhh";

//- (BOOL)isEqualToString:(NSString *)aString;

//单纯的比较两个字符串是否相等

    BOOL isEqual = [str6 isEqualToString:str7];

//- (NSComparisonResult)compare:(NSString *)aString;

//比较字符串的大小  NSOrderedAscending(-1),前面比后边的字符串小 NSOrderedSame(0)两个字符串相等  NSOrderedDescending(1)前面的字符串比后边的大

//区分大小写

    NSComparisonResult reslut = [str6 compare:str7];

//- (NSComparisonResult)caseInsensitiveCompare:(NSString *)aString;

//判断大小时候不区分大小写

    NSComparisonResult result2 = [str6 caseInsensitiveCompare:str7];

#pragma mark 字符串查找

    NSString * str8 = @"aaahhhhahhnnkkk";

    NSString * str9 = @"nkkk";

//- (NSRange)rangeOfString:(NSString *)aString;

//NSRange是一个结构体,有两个成员变量,一个是位置,一个是长度

    NSRange range = [str8 rangeOfString:str9];

//- (BOOL)hasPrefix:(NSString *)aString;

//判断str9是不是str8的前缀

    BOOL has = [str8 hasPrefix:str9];

//- (BOOL)hasSuffix:(NSString *)aString;

//判断一个字符串是否是另外一个字符串的后缀

    BOOL has2 = [str8 hasSuffix:str9];

#pragma mark 字符串提取

    NSString * str10 = @"aaabbbkkkhhh";

//- (NSString *)substringFromIndex:(NSUInteger)from;

//index开始(包括index)提取字符串后面的部分

    NSString * substr1 = [str10 substringFromIndex:2];

//- (NSString *)substringToIndex:(NSUInteger)to;

//从字符串开始提取到index之前位置(不包括index

    NSString * subStr2 = [str10 substringToIndex:3];

//- (NSString *)substringWithRange:(NSRange)range;

//在字符串中提取某个范围中的字符串

    NSRange range2 =  NSMakeRange(4, 3);

    NSString * subStr3 = [str10 substringWithRange:range2];      

#pragma mark ----字符串分割----

//1.以一个子串分割返回一个数组

//- (NSArray *)componentsSeparatedByString:(NSString *)separator;

    //@"assjaksdfhakasdakasl"  @"ak"

    NSArray * arrar1 = [@"assjaksdfhakasdakasl"  componentsSeparatedByString:@"ak"];

//如果在原来的字符串中找不到分割标准字符串,直接返回没有被分割的原字符串

        NSArray * arry2 = [@"aa*hhk*@loo*kk"  componentsSeparatedByString:@"*@"];

        NSLog(@"%@",arry2);

//2.以字符集分割返回数组character

//- (NSArray *)componentsSeparatedByCharactersInSet:(NSCharacterSet *)separator;

    NSArray * array3 = [@"I am @hight!!ji#chengkkxu yuan" componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"@!#k"]];     

#pragma mark ----字符串拼接----

//3.用数组拼接成字符串

//- (NSString *)componentsJoinedByString:(NSString *)separator;

//separator为连接符,拼接数组中的每个字符串

    NSString* substr = [array3 componentsJoinedByString:@"7"];    

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值