NSString的常用方法,包括查找、切割、比较

来源:互联网 发布:淘宝商城电视机 编辑:程序博客网 时间:2024/06/14 10:39
////  main.m//  NSString的各种常用方法////  Created by zzqiltw on 14-5-26.//  Copyright (c) 2014年 zzqiltw. All rights reserved.//#import <Foundation/Foundation.h>#pragma mark 字符串的比较void testCompare() {    if ([@"abc" isEqualToString:@"abc"]) {        NSLog(@"两个字符串内容相等");    }        /*     typedef NS_ENUM(NSInteger, NSComparisonResult) {NSOrderedAscending = -1L, NSOrderedSame, NSOrderedDescending};     */    NSComparisonResult result = [@"abc" compare:@"aBd"];    if (result == NSOrderedAscending) {        //升序,即左边 < 右边        NSLog(@"左边 < 右边");    } else if (result == NSOrderedSame) {        NSLog(@"左边 = 右边");    } else {        //NSOrderedDescending降序        NSLog(@"左边 > 右边");    }}#pragma mark 字符串的搜索void testSearch() {    NSString *str = @"123haha.txt";        BOOL result = [str hasPrefix:@"123"];    NSLog(@"是否以123开头?%i", result);        result = [str hasSuffix:@".txt"];    NSLog(@"是否以.txt结尾?%i", result);        // 类似于Java中得indexOf    NSRange range = [str rangeOfString:@"ha"];    if (range.location != NSNotFound) {        NSLog(@"找到字符串!范围是:%@", NSStringFromRange(range));    } else {        NSLog(@"找不到字符串!");    }        // 从尾部开始找    range = [str rangeOfString:@"ha" options:NSBackwardsSearch];    NSLog(@"%@", NSStringFromRange(range));}#pragma mark 字符串截取(Java subString)void testSubString() {    NSString *str = @"123456789";        // 从5(包括5)截到结尾:6789    NSString *sub = [str substringFromIndex:5];    NSLog(@"%@", sub);        // 从开头截到5(不包括5):12345    sub = [str substringToIndex:5];    NSLog(@"%@", sub);        // 给定一个范围截取:从索引3开始长度为2的范围(45)    NSRange range = NSMakeRange(3, 2);    sub = [str substringWithRange:range];    NSLog(@"%@", sub);        // 切割字符串(Java split)    NSString *str2 = @"abc-de-f-ghi";    NSArray *array = [str2 componentsSeparatedByString:@"-"];    NSLog(@"%@", array);}#pragma mark 字符串和其他类型转换void testTransf() {    // 转整型    NSString *str = @"123";    int a = [str intValue];    NSLog(@"%i", a);        // 计算长度    NSLog(@"%zi", [@"Hello世界" length]);        // 取出字符    unichar c = [str characterAtIndex:0];    NSLog(@"%c", c);        // 转换成C语言风格的字符串    const char *s = [str UTF8String];    NSLog(@"%s", s);    }#pragma mark mainint main(int argc, const char * argv[]){    @autoreleasepool {//        testCompare();//        testSearch();//        testSubString();        testTransf();    }    return 0;}

0 0