一 NSString不可变字符串

1.字符串的创建

//创建字符串常量

NSString *string1 = @"hello";

string1 = @"hello word";

//alloc创建一个字符串

NSString *string2 = [[NSString alloc] initWithString:@"hello"];

NSString *string3 = [[NSString alloc] initWithFormat:@"hello %@",string1];

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

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

2.字符串的拼接

NSString *str1 = @"张三";

NSString *str2 = @"李四";

NSString *str3 = @"王五";

NSInteger a = 10;

NSString *string4 = [[NSString alloc] initWithFormat:@"%@,%@,%@,%ld",str1,str2,str3,a];

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

3.类方法创建字符串

NSString *string5 = [NSString stringWithString:@"这是一个字符串"];

NSString *string6 = [NSString stringWithFormat:@"hello %@",string5];

NSLog(@"%@",string6);

4.字符串的比较

NSString *s1 = @"zhangsan";

NSString *s2 = @"zhangsan";

//--------------比较指针--------------

if (s1 == s2) {

NSLog(@"指针地址一样");

}

//--------------比较内容--------------

//isEqualToString  区分大小写的

if ([s1 isEqualToString:s2]) {

NSLog(@"字符串内容一样");

}

  5.使用isEqualToString

NSString *string7 = [[NSString alloc] initWithFormat:@"abc%@",@"def"];

NSString *string8 = [[NSString alloc] initWithFormat:@"abc%@",@"def"];

if ([string7 isEqualToString:string8]) {

NSLog(@"string7和string8的内容一样");

}

if (string7 == string8) {

NSLog(@"string7和string8的指针一样");

}

6.比较大小

NSString *string9 = @"changXiAngwEilai";

NSString *string10 = @"Changxiangweilai";

//compare  区分大小写的比较

NSComparisonResult result = [string9 compare:string10];

if (result == NSOrderedDescending) {

NSLog(@"这是降序");

}else {

NSLog(@"这是升序");

}

//caseInsensitiveCompare:不区分大小写的比较

result = [string9 caseInsensitiveCompare:string10];

if (result == NSOrderedSame) {

NSLog(@"不区分大小写相同");

}

  7.判断字符串的开头

NSString *string11 = @"changxiangweilai";

if ([string11 hasPrefix:@"chang"]) {

NSLog(@"string11是以chang开头");

}

8.判断字符串的结尾

if ([string11 hasSuffix:@"lai"]) {

NSLog(@"string11是以lai结尾");

}

9.字符串转换

NSString *string12 = @"heLlO WoRd";

//将字符串转换成小写lowercaseString

NSLog(@"小写:%@",string12.lowercaseString);

//将字符串转换成大写uppercaseString

NSLog(@"大写:%@",string12.uppercaseString);

//首字母改成大写,其他小写capitalizedString

NSLog(@"首字母大写:%@",string12.capitalizedString);

10.字符串和基本数据类型转换

NSString *string13 = @"12";

//string-> int

NSInteger intValue = [string13 integerValue];

NSLog(@"intValue:%ld",intValue);

NSString *string14 = @"3.4";

float floatValue = [string14 floatValue];

NSLog(@"floatValue:%f",floatValue);

NSString *string15 = @"12";

[string15 boolValue];

11.字符串的长度

NSString *string15 = @"abcdefg";

NSUInteger length = string15.length;

NSLog(@"length:%ld",length);

12.根据下标获取字符

unichar c = [string15 characterAtIndex:3];

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

13.字符串的截取

NSString *string16 = @"www.baidu.com";

//1.截取到某一个指定的位置  substringToIndex  (不包含当前的下标)

//    截取出www

NSString *subStr1 = [string16 substringToIndex:3];

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

//2.从指定位置截取  substringFromIndex  (包含当前下标)

//截取出com

NSString *subStr2 = [string16 substringFromIndex:10];

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

//3.从某一个指定的截取指定长度

//baidu

NSRange rg = {4,5};

NSString *subStr3 = [string16 substringWithRange:rg];

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

14.字符串的追加

NSString *string17 = @"Andriod";

//在Andriod后面追加 iOS

NSString *appendStr1 = [string17 stringByAppendingString:@" iOS"];

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

NSString *appendStr2 = [string17 stringByAppendingFormat:@" %@%d",@"iOS",9];

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

15.字符串的检索

NSString *string18 = @"12345678@qq.com";

//检索字符串中的qq.com

NSRange rg1 = [string18 rangeOfString:@"qqcom"];

//返回的结果:如果找到了,则返回字符串的信息;如果找不带,则location会返回一个NSNotFound

NSLog(@"location:%ld  length:%ld",rg1.location,rg1.length);

if (rg1.location == NSNotFound) {

NSLog(@"找不到");

}

二. NSMutableString(可变字符串)

1.可变字符串的创建

//NSMutableString *mutStr1 = @"abc";  //不能这么写是常量@“abc”

NSMutableString *mutStr1 = [[NSMutableString alloc]  initWithString:@"字符串"];

2.插入数据

[mutStr1 insertString:@"可变" atIndex:0];

3.追加

[mutStr1 appendString:@"对象哈哈"];

4.删除

//删除“哈哈”

NSRange rg2 = [mutStr1 rangeOfString:@"哈哈"];

[mutStr1 deleteCharactersInRange:rg2];

5.替换

//(1)检索需要替换的字符串

NSRange rg4 = [mutStr1 rangeOfString:@"字符串"];

//(2)替换

[mutStr1 replaceCharactersInRange:rg4 withString:@"数组"];

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

6.按照某个字符将字符串截取成若干个字符串

NSString *str = @"this is string";

NSArray *arr = [str componentsSeparatedByString:@" "];

NSLog(@"arr = %@",arr);

Foundation框架—字符串(NSString)的更多相关文章

  1. 14.Object-C--浅谈Foundation框架字符串NSString 与NSMutableString

    OC的字符串时经常使用到的,今天我对于OC字符串做一个简单的总结,如果有错误之处,麻烦留言指正.感谢! NSString是一个不可变长度的字符串对象.表示它初始化以后,你不能改变该变量所分配的内存中的 ...

  2. Foundation框架—字符串

    Foundation框架—字符串 一.Foundation框架中一些常用的类 字符串型: NSString:不可变字符串 NSMutableString:可变字符串 集合型: 1) NSArray:O ...

  3. Foundation框架之NSString及其Mutable类型

    Foundation框架之NSString及其Mutable类型 目录 概述 对字符串的实用操作 拼接 拆分 字符串比较 是否包含某字符串 字数统计 大小写转换 具体的方法参见API 待研究 概述 对 ...

  4. 李洪强iOS之Foundation框架—字符串

    Foundation框架—字符串 一.Foundation框架中一些常用的类 字符串型: NSString:不可变字符串 NSMutableString:可变字符串 集合型: 1) NSArray:O ...

  5. OC中Foundation框架之NSString、NSMutableString

    创建方式 )直接赋值 NSString *str =@"abc"; )创建对象 NSString *str2 = [[NSString alloc]init]; str2 =@&q ...

  6. OC Foundation框架—字符串

    一.Foundation框架中一些常用的类 字符串型: NSString:不可变字符串 NSMutableString:可变字符串 集合型: 1) NSArray:OC不可变数组 NSMutableA ...

  7. 【IOS 开发】Objective-C Foundation 框架 -- 字符串 | 日期 | 对象复制 | NSArray | NSSet | NSDictionary | 谓词

    一. 字符串 API 1. NSString 用法简介 (1) NSString API 介绍 NSString 功能 : -- 创建字符串 : 使用 init 开头的实例方法, 也可以使用 Stri ...

  8. OC Foundation框架—字符串操作方法及习题

    #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...

  9. Foundation框架系列-NSString

    NSString OC字符串与C语言字符串转换 NSString *str = @"Hello world ! !"; // OC字符串 --> C语言字符串 char *c ...

随机推荐

  1. Nginx泛解析的匹配域名绑定到子目录配置

    网站的目录结构为: # tree /home/wwwroot/linuxeye.com /home/wwwroot/linuxeye.com ├── bbs │   └── index.html └─ ...

  2. 崽崽帮www.zaizaibang.com精选2

    崔其亮-儿科专科 智慧熊北京丰台幼儿园——秋游活动 周边景点——哈尔滨旅游攻略 月是故乡明丨那些买给自己吃的常德手工月饼老店 [周末乐游]南京最美10所大学,这个周末一起逛一逛吧 彭韶-儿科二门诊 [ ...

  3. 基于服务(Web Service)的文件管理Winform客户端实现(二)

    上一篇主要介绍文件管理服务有哪些方法,实现了哪些功能. 基于服务(Web Service)的文件管理Winform客户端实现(一) 本篇将根据文件服务服务实现Winform客户端设计.开发. 3.   ...

  4. 如何通过WPS 2013 API 将Office(Word、Excel和PPT)文件转PDF文件

    1. 描述 PDF 文件是一种便携文件格式,是由Adobe公司所开发的独特的跨平台文件格式.PDF文件以PostScript语言图象模型为基础,无论在哪种打印机上都可保证精确的颜色和准确的打印效果,即 ...

  5. 右键添加 CMD 命令提示符

    # 右键添加 CMD 命令提示符 当然是修改注册表   - 打开注册表编辑器(按下Win+R打开运行对话框,输入regedit),找到[HKEY_CLASSES_ROOT/Folder/shell] ...

  6. HelloWorld!

            爪哇岛上程序猿,5载忙忙未等闲, 醉里挑灯秒登VPN解决Bug,梦里手撕产品战PM:             但行好事,莫问前程,      泰山崩于前,我依然沐浴更衣焚香沏茶:   ...

  7. 解决YII提交POST表单出现400错误,以及ajax post请求时出现400问题

    POST表单400错误: 正确做法: Add this in the head section of your layout: <?= Html::csrfMetaTags() ?> -- ...

  8. JVM 垃圾回收器工作原理及使用实例介绍

    IBM介绍文档:https://www.ibm.com/developerworks/cn/java/j-lo-JVMGarbageCollection/ Java 的新生代串行垃圾回收器中使用了复制 ...

  9. FastJson的使用

    FastJson FastJson:阿里巴巴的一个Json处理工具包,包括序列化和反序列化两部分. <dependency> <groupId>com.alibaba</ ...

  10. java获取服务器IP地址及MAC地址的方法

    这篇文章主要介绍了java编程实现获取机器IP地址及MAC地址的方法,实例分析了Java分别针对单网卡及多网卡的情况下获取服务器IP地址与MAC地址的相关技巧,需要的朋友可以参考下   本文实例讲述了 ...