Note-02-字符串处理

//
//  main.m
//  Note-02-字符串处理
//
//  Created by 刘佳斌 on 15/11/17.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

/*
 1.定义一个花类,五种花(狗尾巴花,玫瑰花,菜花,薰衣草,满天星),分别给每一种花起一个名
   给每一种花一个特征,
 2.定义一个车类,写三种车,都有颜色,名字,价格,排量,起速
 */
#import <Foundation/Foundation.h>
#import "Phone.h"
int main(int argc, const char * argv[]) {
    @autoreleasepool {
 /*
    有返回值方法
    公式:- (返回值类型) 方法名;  //声明
         - (返回值类型) 方法名 { return 返回值类型的数据 }
   
    调用: [对象名 方法名];    //他就是具体的数据
     (给别人一个数据)
 
    //无参有返回值
    -(void)函数名:(参数类型)参数名;   (为了跟别人要一个数据)
 
  数据类型:
  c语言里的所有基本数据类型都可以在oc中使用
  */
        
/*
  字符串:
  NSString
 1.初始化:NSString *string = @"我是好学生";
         NSString *string =[NSString *string];  初始化一个空的字符串(常用);
         NSString *string = [[NSString alloc] init];  空的;
 
 2.处理字符串
        2.1 字符串所有内容转成大写(前提是字母);  uppercaseString
        2.2 字符串所有内容转成小写;            lowercaseString
        2.3 字符串首字母大写,其他小写          capitalizedString
        2.4 判断字符串是不是以什么字符开头的     BOOL类型 (只有yes 1 和 no 0);    BOOL类型 默认值为NO
                                            hasPrefix 前缀
        2.5 判断字符串是不是以什么字符结尾的
                                            hasSuffix 后缀
        2.6 字符串范围                       NSRange     //范围包含:起点的位置和长度
        2.7 查找字符串有无包含另一字符串        rangeOfString
        2.8 判断两个字符串是否相同             isEqualToString
        2.9 字符串截取                       substringToIndex
            截取到最后                       substringFromIndex
            截取的范围                       substringWithRange
        2.10 字符串拼接                      stringByAppendingString
             格式化拼接字符串                 stringByAppendingFormat
             字符串直接格式化                 stringWithFormat
        2.11 让一个字符串有一个字符串          stringWithString     (在可变字符串初始化的时候用到)
        2.12 插入字符串                      insertString:@"要传的内容" atIndex:要传的位置
 
 
 
 */
        
#pragma mark   -----有参   有返
/*
        Phone *iPhone = [[Phone alloc] init];
    
       
        [iPhone setName:@"葫芦娃"];
         NSString *phoneName = [iPhone name];
        NSLog(@"%@",phoneName);
*/
   
#pragma mark   ---字符串
   /*
        NSString *name = @"huluwa";
        name = [name uppercaseString];
        NSLog(@"%@",name);
        name = [name lowercaseString];
        NSLog(@"%@",name);
        name = [name capitalizedString];
        NSLog(@"%@",name);
    */
    
    //判断字符是不是以毛开头
/*
     NSString *name = @"毛泽东";
     BOOL isRight = [name hasPrefix:@"毛"];
        if(isRight!=YES){
            NSLog(@"不是");
        }
        else
            NSLog(@"是");
 
    NSString *telNum = @"13101716325";
    if ([telNum hasPrefix:@"135"]!=YES) {
        NSLog(@"不是");
    }
    else NSLog(@"是");
   */
 
    
        //判断字符是不是以 。结尾
    /*
        NSString *string = @"今天真好。,";
        if ([string hasSuffix:@"。"]!=YES) {
            NSLog(@"不是以句号结束");
        }
      */
        
    //NSRange:范围
   /*
        NSRange rang;
        rang.location = 1;
        rang.length =3;
   */
        //查找有无@“书包”
  /*      NSString *string = @"背着书包去放牛";
        //NSNotFound //表示没有找到
        NSRange range = [string rangeOfString:@"书包"];
        if (range.location != NSNotFound) {
            NSLog(@"找到了");
        }
  */
        
   //判断两个字符串是否相同
    /*
        NSString *string = @"阿里";
        BOOL isEq = [string isEqualToString:@"阿狸"];
        if (isEq != YES) {N
            NSLog(@"不相同");
        }
        else NSLog(@"相同");
      */
        
    //截取
   /*
        NSString *string = @"太阳光,金亮亮,雄鸡唱三唱!";
        NSString *newString = [string substringToIndex:3];   //截取前三个
        NSLog(@"%@",newString);
        NSString *newString1 = [string substringFromIndex:3];  //截取从第三个开始到最后
        NSLog(@"%@",newString1);
        
        NSRange range;
        range.location = 4;
        range.length = 3;
        NSString *newString2 = [string substringWithRange:range];   // 截取从第四个位置3个范围
        NSLog(@"%@",newString2);
        
    */
    
        
 //字符串拼接
  /*
        //在string基础之上,拼接一段字符串,生成一个新的字符串
        NSString *string = @"12345";
        NSString *string1 = [ @"上山打老虎" stringByAppendingString: string];
        //在string 的后面拼接 “上山打老虎”  字符串拼接的顺序,就是字符串内容的顺序
        NSLog(@"%@",string1);
        
  */
//格式化拼接字符串  可以把任何格式对象转换成字符串  也会生成一个新的字符串
 
  //      在一个字符串基础之上,拼接一个格式化的字符串,生成一个新的字符串
  /*      NSString *string = @"金刚葫芦娃";
        // 1. @“是”
        // 2. @"钢铁做的"
        // 3. int 500
        // 4. @"斤"
        NSString *s1 = @"是";
        NSString *s2 = @"钢铁做的";
        int num = 500;
        NSString* s3 = @"斤";
  //      NSLog(@"%@%@%@%d%@",string,s1,s2,num,s3);       //仅仅输出
        
  //      NSString *newString = [string stringByAppendingFormat:@"%@%@%d%@",s1,s2,num,s3]; //格式化拼接
    
//使用格式化字符串,是为了把其他格式的数据,转成字符串,也可做拼接
        NSString *s = [NSString stringWithFormat:@"%@%@%@%d%@",string,s1,s2,num,s3];
 
*/
        
//数据转换  把其他数据类型,转换成字符串,可以使用格式化字符串的方法 (目的是为了使用它)
        
//字符串转BOOL类型,
    /*
        NSString *s = @"erww";
        //除了数字,字符串转成BOOL或者int...默认为空,都是0 (这些都是不提倡的)
        BOOL is = [s boolValue];
        int num = [s intValue];
        NSLog(@"%d  %d",is,num);
     
     BOOL类型需要转换的字符串内容,必须是0 1 内容不是0 就是1;
     intValue boolValue 等 把字符串类型的数字转成相对应的int bool类型
      */
/*
        NSString *num1 = @"1";
        NSString *num2 = @"2";
      //int a = num1 + num2;   ❌
        int a = [num1 intValue] + [num2 intValue];
        
*/
 
#pragma mark    --可变字符串 NSMutableString
        //之前学的NSString的方法,NSMutableString都可以使用
        
//初始化可变字符串
   //     NSMutableString *s = @"asfg";  //虽然可以输出,但直接用@“”,s被编译器默认为是不可变的字符串
       //方法前面是“-”,表示是一个实例方法(对象方法),用对象名去调用方法
       //  “+”表示是一个类方法,类方法用类名调用方法
       // stringWithString  让一个字符串有一个字符串
        
       // NSMutableString *s = [NSMutableString string];
       // NSMutableString *string = [NSMutableString stringWithString:@"aslgl"];
      //  NSMutableString *string1 = [NSMutableString stringWithFormat:@"ags"];
        
     /*❓❓❓ 为什么有可变不可变字符串
        目的:为了让原有字符串可以添加内容,修改内容,删除内容
        
     //可变字符串拼接
        NSMutableString *string = [NSMutableString stringWithString:@"你好"];
        [string appendString:@",北京"];
       // int a = 10;
       // [string appendFormat:@",北京%d",a];  两种拼接都可以,是在原有基础上添加的,并且没有生成一个新的字符串
      */
 
      //插入字符串
    /*
        NSMutableString *string = [NSMutableString stringWithString:@"你好"];
        [string  insertString:@"您" atIndex:1];
     */
        
        //删除字符串
     /*
        NSRange range = {0,1};
        NSMutableString *string = [NSMutableString stringWithString:@"你好"];
        [string deleteCharactersInRange:range];
       */
        
     // 替换字符串   注意要替换的长度
      /*
        NSMutableString *string = [NSMutableString stringWithString:@"你好"];
        NSRange range = {0,1};
        [string replaceCharactersInRange:range withString:@"您好好好好"];
        NSLog(@"%@",string);
    */
        
        
        
    }
    return 0;
}










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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值