OC之【NSString字符串的其他用法】

原创 2013年12月01日 19:56:52

#import <Foundation/Foundation.h>


#pragma mark 字符串的大小写处理

void caseTest() {

    NSString *str = @"GuangDong";

    // 转成大写

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

    // 转成小写

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

    // 首字母变大写,其他字母变小写

    NSLog(@"首字母变大写:%@", [@"aGE" capitalizedString]);

}


#pragma mark 字符串的比较

void compare() {

    // 检测字符串的内容是否相同

    BOOL result = [@"abc" isEqualToString:@"abc"];

    NSLog(@"%i", result);

    

    // NSOrderedAscending  右边的字符串比左边大

    // NSOrderedSame  两个字符串的内容相同

    // NSOrderedDescending  左边的字符串比右边的大

    NSComparisonResult result2 = [@"abc" compare:@"Abc"];

    if (result2 == NSOrderedSame) {

        NSLog(@"两个字符串的内容相同");

    } else if (result2 == NSOrderedAscending) {

        NSLog(@"右边 > 左边");

    } else if (result2 == NSOrderedDescending) {

        NSLog(@"右边 < 左边");

    }

}


#pragma mark 字符串的搜索

void search() {

    NSString *str = @"123456456.txt";

    

    NSLog(@"是否以22开头:%i", [str hasPrefix:@"22"]);

    NSLog(@"是否以txt结尾:%i", [str hasSuffix:@"txt"]);

    

    // 搜索字符串

    NSRange range = [str rangeOfString:@"456"];

    // range.length == 0

    if (range.location == NSNotFound) {

        NSLog(@"不能找到");

    } else {

        NSLog(@"找到的范围是:%@", NSStringFromRange(range));

    }

    

    // 从尾部开始搜索字符串

    range = [str rangeOfString:@"456" options:NSBackwardsSearch];

    NSLog(@"%@", NSStringFromRange(range));

    

    // 指定范围进行搜索

    // [str rangeOfString:@"456" options:NSBackwardsSearch range:<#(NSRange)#>];

}


#pragma mark 字符串的截取

void subString() {

    NSString *str = @"123456";

    

    // 从索引3开始截取到尾部(包括3)

    NSLog(@"%@", [str substringFromIndex:3]);

    

    // 从头部开始截取到索引3之前(不包括3)

    NSLog(@"%@", [str substringToIndex:3]);

    

    // 指定范围进行截取

    NSRange range = NSMakeRange(2, 3);

    NSLog(@"%@", [str substringWithRange:range]);

    

    //字符串分割

    NSString *str2 = @"a-b-c-d-5";

    NSArray *array = [str2 componentsSeparatedByString:@"-"];

    NSLog(@"%@", array);

    

    NSString *str3 =  [array objectAtIndex:0];

    NSLog(@"%@", str3);

}


#pragma mark 与路径相关

void pathTest() {

    // 快速创建一个自动释放的数组

    NSMutableArray *components = [NSMutableArray array];

    [components addObject:@"Users"];

    [components addObject:@"jamesWong"];

    [components addObject:@"Desktop"];


    // 将数组中的所有字符串拼接成一个路径

    NSString *path = [NSString pathWithComponents:components];

    NSLog(@"%@", path);

    

    // 将路径分解成一个数组

    NSArray *cmps = [path pathComponents];

    NSLog(@"%@", cmps);

    

    // path是一个字符串常量,是不可变的

    path = @"/users/jamesWong/test";

    // 判断是够为绝对路径(依据是前面有无/

    NSLog(@"%i", [path isAbsolutePath]);

    NSLog(@"最后一个目录:%@", [path lastPathComponent]);

    // 删除最后一个目录

    NSLog(@"%@", [path stringByDeletingLastPathComponent]);

    // 在最后面拼接一个目录

    NSLog(@"%@", [path stringByAppendingPathComponent:@"abc"]);

}


#pragma mark 拓展名处理

void extension() {

    NSString *str = @"/User/jamesWong/test.txt";

    

    NSLog(@"拓展名:%@", [str pathExtension]);

    // 删除拓展名

    NSLog(@"%@", [str stringByDeletingPathExtension]);

    // 添加拓展名

    NSLog(@"%@", [@"abc" stringByAppendingPathExtension:@"mp3"]);

}


#pragma mark 其他用法

void other() {

    NSString *str = @"12";

    int a = [str intValue];

    NSLog(@"%i", a);

    

    // 计算字数,不是计算字符数

    NSLog(@"length=%zi", [@"我是字符串123" length]);

    

    // 取出对应的字符

    unichar c = [@"abc" characterAtIndex:0];

    NSLog(@"%c", c);

    

    // 返回C语言中的字符串

    const char *s = [@"abc" UTF8String];

    NSLog(@"%s", s);

}


int main(int argc, const char * argv[])

{


    @autoreleasepool {

        other();

    }

    return 0;

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

OC字符串的常规用法NSString的操作

一、字符串的初始化 1>最简单初始化 ————最常用 // NSString *str1 = @"I Love You!"; //常量区 //// 2>常规初始化 // NSStr...

iOS-OC-NSString和NSMutableString用法大全

// 创建NSString的常用方法 + (void)NSStringCreateMethod { // 字符串常量 类似于 char *p = "Hello world"; // N...

OC字符串对象NSString对象方法使用基础

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和...

OC中字符串NSstring

//NSString不可变字符串类型         NSString*str0=@"IOS";                  //1,创建字符串的方法         //(1)实例方法...

C24_OC14-NSString字符串

1.NSString和文件操作 2.NSMutableString
  • Vigiles
  • Vigiles
  • 2014年05月11日 16:53
  • 917

OC笔记,字符串NSString

该笔记是千峰3G学院的OC语言教学视频中的老师所讲,本人整理出来以备需要时查看。 如有侵权,请联系本人删除该博客。 字符串的创建和使用。 所有的笔记都记录在代码的注释部分,每一句代码都至少有一句...

OC--NSString字符串

NSString:不可变字符串,这里的不可变对应可变字符串的解释是不可以动态创建和修改。但是并不表示一个不可变字符串变量的值创建了就不变了,因为,既然叫变量,那么变量的值就是可变的,只是不可以对不可变...

oc 的字符串常用操作,包含NSString NSMutableString也能使用

http://www.cnblogs.com/lovekarri/articles/2380033.html //1、创建常量字符串。 NSString *astring = @"...
  • hccgk
  • hccgk
  • 2015年07月31日 17:29
  • 284

oc-字符串NSString,NSMutablesString基本使用方法

一.NSString字符串       》字符串是Foundation框架下的类,iOS2.0以后。      》 NSString是不可变的字符串,一旦被创建(即开辟了空间),只可读取,不能被修改(...

黑马程序员——OC语言日志——NSString字符串的比较函数

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 1、比较字符串大小 字符串根据排列顺序的不同,会有大小的差异,如果我们要比较两个字符的大小的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:OC之【NSString字符串的其他用法】
举报原因:
原因补充:

(最多只允许输入30个字)