zoukankan      html  css  js  c++  java
  • 考核例题关于字符串

    #define NSLog(FORMAT, ...) fprintf(stderr,"%s ",[[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);

    #import <Foundation/Foundation.h>

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

        @autoreleasepool {

          /*

           第1题 字符串中的world替换为i bookan wisdom

           */

            

            NSString *str1=@"hello world and sunshine";

            NSRange rang1=[str1 rangeOfString:@"world"];

            

            NSMutableString *brr=[[NSMutableString alloc]init];

            

            brr=[[NSMutableString alloc]initWithString:str1];

            

            [brr replaceCharactersInRange:rang1 withString:@"i bookan wisdom"];

                     NSLog(@"%@",brr);

            /*

             第2题 字符串的相加,以字符串输出,并输出长度

             */

            NSString *str2=@"999";

            NSString *str3=@"888";

            NSString *st=[[NSString alloc]initWithFormat:@"%@%@",str2,str3];

            NSLog(@"%@",st);

            /*

             第3题 比较字符串大小

             */

            NSString *str4=@"ABC";

            NSString *str5=@"ABc";

             NSComparisonResult result1=[str4 compare:str5];

            if(result1==-1)

            {

                NSLog(@"str4小");

            }else if(result1==0)

            {

                NSLog(@"相等");

            }else

            {

                NSLog(@"str5小")

            }

            /*

             第4题 截取Android并输出

             */

            NSString *str6=@"iphoneAndroid";

            NSString *str11=[str6 substringFromIndex:6];

            NSLog(@"%@",str11);

            /*

             第5题 用c语言创建一个oc字符串,并输出。使用两种方法。

             

             */

            char *s="zhangsanfeng";

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

            NSString *t1=[NSString stringWithUTF8String:s];

           

            NSLog(@"%@",t);

            NSLog(@"%@",t1);

            

            /*

             第6题 字符串内所有a都替换成A;

             */

            NSString *str7=@"whatareyou";

            NSString *newStr=[str7 stringByReplacingOccurrencesOfString:@"a" withString:@"A"];

            NSLog(@"str=%@",newStr);

            /*

             第7题 判断字符串是否以http开头

             */

            NSString *str8=@"http://www.sina.com.cn";

            BOOL r=[str8 hasPrefix:@"http"];

            if(r==0)

            {

                NSLog(@"NO");//不以http开头为NO

            }else

            {

                NSLog(@"YES");//如果是以http开头则YES,

            }

            /*

             第8题 将字符串内admin和123截取出来

             */

            NSString *str9=@"http://localhost:8099/test/user=admin&pwd=123";

            //方法一

            NSRange rang4;

            rang4.location=32;

            rang4.length=5;

            NSString *str13=[str9 substringWithRange:rang4];      //根据rang4截取第32位开始的5个字符

            

            

            NSRange rang6=[str9 rangeOfString:@"123"];//直接截取该字符串

             NSString *str14=[str9 substringWithRange:rang6];

            NSLog(@"%@",str13);

             NSLog(@"%@",str14);

            

            

            

            /*

             第9题 字符添加telephone:iphone iphone5修改为"telephone:iphone iphone4 iphone5 iphone6";

             */

            NSString *str10=@"telephone:iphone iphone5";

            NSMutableString *str16=[NSMutableString stringWithString:str10];

            [str16 insertString:@"iphone4 " atIndex:17];

            [str16 appendString:@" iphone6"];

            NSLog(@"%@",str16);

            

           /*

            第10题 排序

            */

            NSArray *arr=@[@"String 11",@"String 21",@"String 1",@"string 2",@"String 02"];

            NSArray *arr2=[arr sortedArrayUsingSelector:@selector(compare:)];//按字符串的ASCII码从小到大排序

            for(id str1 in arr2)

            {

                NSLog(@"%@",str1);

            }

            NSLog(@" ");

            //自定义排序——block(下面代码相当于冒泡排序)

            NSComparator sort1=^(id obj1,id obj2){      //传入两个数组中的元素

                NSComparisonResult result=[obj2 compare:obj1];

                return result;             //根据自己定义返回一定的值

            };

            NSArray *sort5=[arr sortedArrayUsingComparator:sort1];     //根据返回值排序

            for(id str2 in sort5){

                NSLog(@"%@",str2);

            }

    /*第11题、字符串倒置*/

    NSString *arr=@" abc123.xyz789";

            NSMutableArray *arr1=[[NSMutableArray alloc]init];

            for(NSInteger i=[arr length];i>0;i--)

            {

                NSRange rang=NSMakeRange(i-1, 1);

                NSString *arr3=[arr substringWithRange:rang];

                [arr1 addObject:arr3];

            }

            NSLog(@"%@",arr1);

    /*12题、将2013年05月05日转换为2013-05-05*/

            NSString *arr=@"2013年05月05日";

            NSString *newStr=[arr stringByReplacingOccurrencesOfString:@"年" withString:@"-"];

             NSString *newStr1=[newStr stringByReplacingOccurrencesOfString:@"月" withString:@"-"];

             NSString *newStr2=[newStr1 stringByReplacingOccurrencesOfString:@"日" withString:@""];

            NSLog(@"%@",newStr2);

    //13.将字典的key从Z->A排序,按排序后的key的顺序,输出value,将value按字符串输出

            NSDictionary *dict=@{@"R":@"e",

                                 @"T":@"e",

                                 @"D":@"b",

                                 @"S":@"u",

                                 @"K":@"a",

                                 @"A":@"s",

                                 @"O":@" ",

                                 @"N":@"p",

                                 @"B":@"b",

                                 @"J":@"u",

                                 @"F":@" ",

                                 @"U":@"t",

                                 @"H":@"l",

                                 @"E":@"j",

                                 @"Z":@"s",

                                 

                                 };

            NSArray *arr=[dict allKeys];

            NSComparator sort1=^(id obj1,id obj2){      //传入两个数组中的元素

                NSComparisonResult result=[obj2 compare:obj1];

                return result;             //根据自己定义返回一定的值

            };

            NSArray *sort2=[arr sortedArrayUsingComparator:sort1];     //根据返回值排序

            NSMutableArray *value=[[NSMutableArray alloc]init];

            for(NSMutableArray *v in sort2)

            {

                [value addObject:dict[v]];

            }

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

            for(NSString *w in value)

            {

                brr=[brr stringByAppendingString:w];

            }

            NSLog(@"%@",brr);

      //14、将一个整数123456789倒着输出

    NSInteger i=123456789;

            NSString *str=[NSString stringWithFormat:@"%ld",i];

            NSLog(@"%@",str);

            NSMutableArray *str1=[[NSMutableArray alloc]init];

            for(NSInteger j=[str length];j>0;j--)

            {

                NSRange rang=NSMakeRange(j-1, 1);

                NSString *arr=[str substringWithRange:rang];

                

                [str1 addObject:arr];

            }

            NSLog(@"%@",str1);

    //15.以下是身份证号,输出身份证人的性别,年龄

            NSString *idCard=@"210423198809040437";

            NSRange rang=NSMakeRange(6, 4);

            NSString *arr=[idCard substringWithRange:rang];

            NSLog(@"%@",arr);

     //16、身份证倒数第2位是偶数则为女生

            NSRange rang1=NSMakeRange(16, 1);

            NSString *a =[idCard substringWithRange:rang1];

            NSInteger b=[a intValue];

            if(b%2==0)

            {

            NSLog(@"女生");

            }else{

                NSLog(@"男生");

            }

    //17、按ASCII从低到高输出数组中的字符串

            NSArray *array = @[@"Tim Cook",@"Jony Ive",@"Steve Jobs",@"Robert Brunne",@"Philip Schiller"];

            NSComparator sort1=^(id obj1,id obj2){      //传入两个数组中的元素

            NSComparisonResult result=[obj1 compare:obj2];

                    return result;             //根据自己定义返回一定的值

                        };

            NSArray *sort2=[array sortedArrayUsingComparator:sort1];     //根据返回值排序

            for(id str2 in sort2){

                NSLog(@"%@",str2);

            }

    //18、数组中元素的查找删除

            

            NSMutableArray *arr=[NSMutableArray array];

            for(int i=0;i<array.count;i++)

            {

                NSString *brr=array[i];

                if(![brr isEqual:@"Robert Brunne"])

                {

                    [arr addObject:brr];

                }

            }

           // [arr removeObjectAtIndex:3];

            NSLog(@"%@",arr);

         

            

        }

        return 0;

    }

  • 相关阅读:
    POJ 3164 Command Network 最小树形图 朱刘算法
    区间dp专题
    HDU2896病毒入侵AC_自动机
    HDU2222Keywords Search AC_自动机
    Linux cat命令参数及使用方法详解
    MySQL分支Percona, cmake编译安装
    PHP网站简单架构 – 单独跑php-fpm
    Tengine – Nginx衍生版
    jemalloc优化MySQL、Nginx内存管理
    TCMalloc优化MySQL、Nginx、Redis内存管理
  • 原文地址:https://www.cnblogs.com/wuduo/p/5120124.html
Copyright © 2011-2022 走看看