2019独角兽企业重金招聘Python工程师标准>>>

1、NSString的用法

        //1、创建常量字符串。NSString *string1 = @"这是一个NSString对象";//2、创建空字符串,给予赋值。实例化一个对象NSString *string2 = [[NSString alloc] init];NSString *string = [NSString string];//3、综合1、2方法,提升性能:initWithString方法NSString *string3 = [[NSString alloc] initWithString:@"This is a string3"];NSString *string = [NSString stringWithString:@"创建一个字符串"];// 用这种方法xcode会让你修改为创建一个字符串常量的结构//4、用标准C语言字符串创建OC字符串:initWithCString方法(注意编码方式参数的选择)char *string4c = "This is a C String!中文也支持";NSString *string4 = [[NSString alloc] initWithCString:string4c encoding:NSUTF8StringEncoding];// 这种创建方式在从网上获取数据出现“乱码”时,进行转码的时候将会用到。这时,string4c指明编码类型(NSUTF8StringEncoding)//5、创建格式化字符串:占位符(由一个%加一个字符组成)int i = 1;int j = 2;NSString *string5 = [[NSString alloc] initWithFormat:@"这里输入你想要输入的内容%d",i];//除了int,float,其他数据类型也可以

从文件读取字符串:initWithContentsOfFile方法

NSString *path6 = @"string8.text"; //@里出现的是想要访问的文件的路径

NSString *string6 = [[NSString alloc] initWithContentsOfFile:path6                                                                         encoding:NSUTF8StringEncoding error:nil];

写字符串到文件:writeToFile方法

NSString *string7 = [[NSString alloc] initWithString:@"This is a                                 string7!"];

NSString *path7 = @"string7.text";

[string7 writeToFile:path atomically:YES encoding:NSUTF8StringEncoding                                                  error:nil];

用C语言库函数实现比较:strcmp函数

char stringc1[] = "string!",stringc2[] = "string!";

if(strcmp(stringc1, stringc2) == 0)

NSLog(@"yes");

 oc中使用NSString:isEqualToString方法  

NSString *astringoc1 = @"This is a String!";

NSString *astringoc2 = @"This is a String!";

BOOL result = [astringoc1 isEqualToString:astringoc2];

NSLog(@"result:%d",result);

compare方法(comparer返回的三种值)    

NSString *astring01 = @"This is a String!";

NSString *astring02 = @"This is a String!";

BOOL result1 = [astring01 compare:astring02] == NSOrderedSame;

NSLog(@"result:%d",result);

//NSOrderedSame 判断两者内容是否相同

BOOL result2 = [astring01 compare:astring02]==NSOrderedAscending;

NSLog(@"result:%d",result2);

//NSOrderedAscending 判断两对象值的大小(按字母顺序进行比较,astring02大于astring01为真)

BOOL result3 = [astring01 compare:astring02] == NSOrderedDescending;

NSLog(@"result:%d",result3);

//NSOrderedDescending 判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)

不考虑大小写比较字符串(caseInsensitiveCompare)

NSString *astring01 = @"this is a String!";

NSString *astring02 = @"This is a String!";

BOOL result = [astring01 caseInsensitiveCompare:astring02] == NSOrderedSame;

NSLog(@"result:%d",result);

(NSCaseInsensitiveSearch:不区分大小写比较 NSLiteralSearch:进行完全比较,区分大小写  NSNumericSearch:比较字符串的字符个数,而不是字符值。)

改变字符串的大小写( uppercaseString,lowercaseString,capitalizedString)

NSString *string1 = @"A String";

NSString *string2 = @"String";

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

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

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

在串中搜索子串(rangeOfString)

NSString *string1 = @"This is a string string";

NSString *string2 = @"string";

NSRange range = [string1 rangeOfString:string2];

NSInteger location = range.location;

NSInteger leight = range.length;

//range 中包含了 location (出现的位置) 和length (长度)的属性

NSString *astring = [[NSString alloc] initWithString:[NSString                                                                              stringWithFormat:@"Location:%ld,Leight:%ld",location,leight]];

NSLog(@"astring:%@",astring);

抽取子串  (substringToIndex,substringFromIndex)

//-substringToIndex: 从字符串的开头一直截取到指定的位置,下标从零开始

NSString *string1 = @"This is a string";

NSString *string2 = [string1 substringToIndex:3];

NSLog(@"string2:%@",string2);

//-substringFromIndex: 以指定位置开始(包括指定位置的字符),并包括之后的全部字符

NSString *string1 = @"This is a string";

NSString *string2 = [string1 substringFromIndex:3];

NSLog(@"string2:%@",string2);

//-substringWithRange: //按照所给出的位置,长度,任意地从字符串中截取子串

NSString *string1 = @"This is a string";

NSString *string2 = [string1 substringWithRange:NSMakeRange(0, 4)];

NSLog(@"string2:%@",string2);

扩展路径

NSString *Path = @"~/NSData.txt";

NSString *absolutePath = [Path stringByExpandingTildeInPath];

NSLog(@"absolutePath:%@",absolutePath);

NSLog(@"Path:%@",[absolutePath stringByAbbreviatingWithTildeInPath]);

文件扩展名

NSString *Path = @"~/NSData.txt";

NSLog(@"Extension:%@",[Path pathExtension]);

2、NSMutableString 的用法

给字符串分配容量( stringWithCapacity)

NSMutableString *String;

String = [NSMutableString stringWithCapacity:40];

在已有字符串后面添加字符(appendString,appendFormat)

NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a                                                                                                                         NSMutableString"];

[String1 appendString:@", I will be adding some character"];

在已有字符串中按照所给出范围和长度删除字符  (deleteCharactersInRange)

NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a                                                                                                            NSMutableString"];

[String1 deleteCharactersInRange:NSMakeRange(0, 5)];

在已有字符串后面在所指定的位置中插入给出的字符串(-insertString: atIndex)

NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a                                                                                                               NSMutableString"];

[String1 insertString:@"Hi! " atIndex:0];

将已有的非空符串换成其它的字符串(-setString:)

NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a                                                                                                               NSMutableString"];

[String1 setString:@"Hello Word!"];

按照所给出的范围,和字符串替换的原有的字符(replaceCharactersInRange)

NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a                                                                                                               NSMutableString"];

[String1 replaceCharactersInRange:NSMakeRange(0, 4) withString:@"That"];

判断字符串内是否还包含别的字符串(前缀,后缀)

//01: 检查字符串是否以另一个字符串开头- (BOOL) hasPrefix: (NSString *) aString,hasSuffix以什么字符串结尾

NSString *String1 = @"NSStringInformation.txt";

[String1 hasPrefix:@"NSString"] == 1 ?  NSLog(@"YES") : NSLog(@"NO");

[String1 hasSuffix:@".txt"] == 1 ?  NSLog(@"YES") : NSLog(@"NO");

//02: 查找字符串某处是否包含其它字符串 - (NSRange) rangeOfString: (NSString *) aString,这一点前面在串中搜索子串用到过;

转载于:https://my.oschina.net/u/1245365/blog/172250

NSString ,NSMutableString用法以及一些常用方法相关推荐

  1. NSString / NSMutableString 字符串处理,常用代码 (实例)

    Objective-C 中核心处理字符串的类是 NSString 与 NSMutableString ,这两个类最大的区别就是NSString 创建赋值以后该字符串的内容与长度不能在动态的更改,除非重 ...

  2. IOS基础之NSString,NSMutableString,NSArray的基本使用

    IOS基础之NSString,NSMutableString,NSArray的基本使用 // // main.m // Day10-Foundation框架 // // Created by 鲁军 o ...

  3. 关于NSString,NSMutableString,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary

    NSString,NSMutableString,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary 在 OC 中我们天天都要用,而我们要怎 ...

  4. (转)NSString+NSMutableString+NSValue+NSAraay用法汇总

    //一.NSString //1.创建常量字符串.     NSString *astring = @"This is a String!"; //2.创建空字符串,给予赋值. N ...

  5. 理解 retain 、copy 、NSMutableString 、NSString 的用法

    2019独角兽企业重金招聘Python工程师标准>>> copy为内容拷贝,retain为指针拷贝,NSMutableString为可变字符串,NSString为不可变字符串. 但并 ...

  6. iOS开发学习专题-基础知识(一)NSString NSMutableString NSRange NSNotFound详细使用方式

    本文主要讲解的是不可变字符串NSStringNSString可变字符串NSMutableStringNSRangeNSNotFound详细使用方式 近期主要做的是iOS开发基础知识Objective- ...

  7. NSString、NSArray、NSDic常用方法汇总

  8. NSString的几种常用方法

    NSString的几种常用方法 要把 "2011-11-29" 改写成 "2011/11/29"一开始想用ios的时间格式,后来用NSString的方法搞定. ...

  9. NSString 和 NSMutableString

    // //  main.m //  字符串(NSString&NSMutableString) // //  Created by 闫合 on 16/5/19. //  Copyright © ...

最新文章

  1. python 定义字典键为变量_在python字典中使用变量作为键名
  2. python什么时候进入中国-python诞生于什么时候
  3. 我最喜欢的Java拼图2 + 1 = 4
  4. 那些年我们踩过的乱码坑
  5. 页面回收之shrink_zone的实现
  6. 李航《统计学习方法》多项式函数拟合问题--最小二乘法
  7. 三大开源bi工具_Superset,基于web的开源BI工具,github三万star
  8. onvif python3 推送音频_Python3-onvif协议之相机截图
  9. 创建动态的XML数据
  10. qq群排名如何引流?QQ群排名引流方法,QQ群排名如何做?
  11. 使用Jekyll搭建免费的个人博客详细教程
  12. 什么是 IP 地址 – 定义和解释
  13. 计算机发展史图,图说计算机发展史
  14. 基于java springboot租房平台设计,公寓租赁系统
  15. java中new一个对象时具体都发生了什么?
  16. HTML5 App的代码注入攻击
  17. 让Android控件随着屏幕旋转自由转移至任何地方(附demo)
  18. 解决Caused by: java.lang.NoClassDefFoundError: com/aliyun/oss/internal/OSSUdfOperation
  19. 站长导航系统源码-修复版
  20. Vue动态权限路由addRoutes执行初次白屏解决方法

热门文章

  1. 看漫画学python 豆瓣_看漫画就能学好python?
  2. linux操作系统项目化教程课后答案,完整版Linux操作系统及应用项目教程习题答案(13页)-原创力文档...
  3. 天翼云从业认证【考前半小时的30句话】
  4. springmvc返回数据中文乱码
  5. 笔记-知识产权与标准化知识-软件质量模型(重)
  6. 笔记-计算机网络基础-计算机网络分类
  7. Three.js中使用requestAnimationFrame方法实现立方体转动和小球跳动的动画
  8. SpringBoot中定时任务与异步定时任务的实现
  9. Geotools简介以及quickstsrt加载shp文件并显示
  10. DataTables提示:DataTables warning: table id=queueInfo_table - Requested unknown parameter 'type' for r