oc中的字符串学习

//
//  main.m
//  text7
//
//  Created by 骆超 on 2020/3/3.
//  Copyright © 2020 luochao.com. All rights reserved.
//

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
//        NSString *greeting = @"hello";
//        NSLog(@"sayHello = %@\n",greeting);
        
        NSString *language = @"Objective-c";
        NSString *sayhello = [[NSString alloc] initWithFormat:@"hello, %@!",language];
        NSLog(@"sayhello = %@\n",sayhello);
        
        int starCount = 10;
        NSString *tip = [[NSString alloc] initWithFormat:@"You got %d stars",starCount];
        NSLog(@"tip = %@\n",tip);
        
        //lowercaseString,转换成小写形式
        NSLog(@"tip.lowercaseString = %@\n",[tip lowercaseString]);
        
        //capitalizedString,转换chen成首字母大写形式
        NSLog(@"tip.capitalizedString = %@\n",[tip capitalizedString]);
        
        //检测字符串中是否含有指定字符串的方法,有则输出1,无则输出0,区分大小写
        NSLog(@"tip.hasprefix = %d\n",[tip hasPrefix:@"YOU"]);
        NSLog(@"tip.hassuffix = %d\n",[tip hasSuffix:@"You"]);
        NSLog(@"containsString = %d\n",[tip containsString:@"Stars"]);
        
        //获得字符串的长度,空格也算
        NSLog(@"tip.length = %lu\n",(unsigned long)[tip length]);
        
        //将字符串转换为数字,实际就是将输出字符串80的int属性的的值,可能是让字符串参与计算吧
        NSString *score = @"80";
        NSLog(@"score = %d\n",[score intValue]);
        
        //同理可得,字符串转浮点类型
        NSString *locationX = @"10.2";
        NSLog(@"locationX = %f\n",[locationX floatValue]);
        
        //判断两个字符串是否相等,相等输出1,不等输出0
        NSLog(@"tip is equal to you got 10 stars = %d\n",[tip isEqualToString:@"You got 10 stars"]);
        
        //创建范围类型的对象range,该范围对象是字符串变量“stars”的范围,包含位置和长度两个值
        NSRange range = [tip rangeOfString:@"stars"];
        NSLog(@"range.location = %lu\n",(unsigned long)range.location);
        NSLog(@"range.length = %lu\n",(unsigned long)range.length);
        
        //获得并输出字符串里的第三个字符
        NSLog(@"tip.characterAtIndex.2 = %c\n",[tip characterAtIndex:2]);
        
        //获得并输出字符串里第九个字符以及后面所以字符
        NSLog(@"tip.substringFromIndex.8 = %@\n",[tip substringFromIndex:8]);
        
        //获得并输出从字符串头部开始,到第九个字符之间的所有字符,这两个输出如果遇到空格是不予输出的,如果输出前9个字符而第九个字符是空格的话,output不会输出空格
        NSLog(@"tip.substringToIndex.8 = %@\n",[tip substringToIndex:8]);
        
        //自定义范围对象,输出第五个位置开始的长度为3的字符串
        NSRange tiprange = NSMakeRange(4, 3);
        NSLog(@"tip.substringWithRange = %\n",[tip substringWithRange:tiprange]);
        
        //将字符串中指定的内容替换为其他内容
        NSString *replaceString = [tip stringByReplacingOccurrencesOfString:@"stars" withString:@"apples"];
        NSLog(@"replacedString = %@\n",replaceString);
        
        //在字符串的末尾添加新的字符串
        NSString *greetingSwift = [tip stringByAppendingString:@" Swift!"];
        NSLog(@"greetingSwift = %@\n",greetingSwift);
        
        //一种消除字符串中特殊符号的方法,使用特殊字符串集合对指定字符串进行清除
        NSString *string = @"------Interactive Tutorials--!@#$%^&*()++-";
        NSLog(@"string = %@\n",string);
        //定义特殊字符串集合,hh关于特殊字符集合详见博客转载
        NSCharacterSet *characterset = [NSCharacterSet punctuationCharacterSet];
        string = [string stringByTrimmingCharactersInSet:characterset];
        NSLog(@"Final String = %@",string);
        
        //当旧的字符串的值被重新赋值后,旧的值仍存在于储存空间中,oc不允许字符串可变
//        greetingSwift += @"nice to meet you";
//        NSLog(@"%@\n",greetingSwift);
        
        //使用可变字符串类型,并定义它占用的内存大小,单位字节
        NSMutableString *mutableString = [NSMutableString stringWithCapacity:40];
        NSMutableString *mutableString2 = [[NSMutableString alloc] initWithString:@"This is xxx"];
        //发送消息来添加字符串至尾部
        [mutableString2 appendString:@" MSMutableString."];
        //发送消息来往指定位置插入字符串
        [mutableString2 insertString:@"ooo" atIndex:8];
        NSLog(@"mutableString2 = %@\n",mutableString2);
        
        //发送消息来删除指定范围的字符串,(0,10)从 0 开始,长度是 10
        [mutableString2 deleteCharactersInRange:NSMakeRange(0, 10)];
        NSLog(@"mutableString2.deleteCharactersInRange = %@\n",mutableString2);
        
        //发送消息替换字符串内容
        [mutableString2 setString:@"Clear"];
        NSLog(@"mutableString2 = %@\n",mutableString2);
        
    }
    
    return 0;
}

关于特殊字符数组NSCharacterSet可以看https://www.cnblogs.com/yaoyao0110/p/5413176.html

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值