NSString是oc语言Foundation框架中常用的类,我根据每个方法的功能将NSString的常用方法分为创建字符串、初始化字符串、判断和比较字符串、大写和小写相互转化、字符串的截取、类型转换等功能。它的方法按功能分如图所示(具体每个方法的作用我在后后面有详细的备注,其实根据驼峰命令也基本可以看出每个方法的作用),有些方法带参数,有些不带参数,方法的使用都很容易,在Xcode下编程时会自动匹配:
 
 
 
1⃣️创建字符串:

1 string:创建一个空字符串

2 stringWithstring:用字符串来创建字符串
3 stringWithFormat:创建NSLog格式的字符串
 
2⃣️初始化字符串:
1 init:创建空字符串并对其初始化
2 initWithString:用字符串来初始化字符串
3 initWithFormat:用NSLog格式来格式化字符串
 
3⃣️字符串判断和比较:
1 isEqualTostring:比较字符串是否相等
2 hasPrefix:判断字符串是否以某个字符开始
3 hasSuffix:判断字符串是否以某个字符结束
4 compare:比较字符串的大小
5 caseInsensitiveCompare:不考虑大小写的比较
 
4⃣️字符串大小写转换
1 upperCaseString:小写字母转换为大写字母
2 lowerCaseString:大写字母转换为小写字母
3 capitalizedString:将每个单词的首字母大写
 
5⃣️截取:
1 substringToIndex:从字符串的开头一直截取到指定位置
2 substringFromIndex:从指定位置开始一直截取到字符串结束
3 substringWithRange:根据指定范围返回子字符串
4 characterAtIndex:返回索引号指向的字符串中的字符
 
6⃣️转换类型:
1 doubleValue/floatValue:返回转换为浮点类型的值
2 intValue:返回转换为整形的值
3 boolValue:返回转换为布尔型的值
 
7⃣️其他:
1 length:求字符串的长度
2 stringByAppendintString:字符串后面增加一个新的字符串
3 rangeOfString:查找字符串中是否包含其他字符
4 stringByTrimmingCharacterInSet:去除空格或回车
 
 
以上七种方法具体实现如下:
  1 /    NSString
2 // NSString *string1 = [NSString stringWithString:@"appbear"];
3 // NSLog(@"%@",string1);
4
5
6 NSString *string2 = @"bearapp";
7 NSLog(@"%@",string2);
8
9
10 NSString *string3 = [NSString stringWithFormat:@"today is %d",5];
11 NSLog(@"%@",string3);
12
13 // 连接两个字符串
14 NSString *string4 = [NSString stringWithFormat:@"today is %@",string2];
15 NSLog(@"%@",string4);
16
17
18 // 判断string是不是一样
19 NSString *codeString = @"cocochina123";
20 NSString *codeString2 = @"cocochina123";
21
22 if ([codeString isEqualToString:codeString2]) {
23 NSLog(@"两个字符串相等");
24 }else{
25 NSLog(@"两个字符串不相等");
26 }
27
28 // 比较地址是否相同
29 if (codeString2==codeString) {
30 NSLog(@"==");
31 }else{
32 NSLog(@"!=");
33 }
34
35 // 大小写转换
36 // 全部转化为大写
37 NSString *up = [codeString uppercaseString];
38 NSLog(@"%@",up);
39 // 全部转化为小写
40 NSString *low = [codeString2 lowercaseString];
41 NSLog(@"%@",low);
42 // 全部首字母大写
43 NSString *cap = [string4 capitalizedString];
44 NSLog(@"%@",cap);
45
46
47
48 NSString *stri1 = @"abcdefg";
49 NSString *stri2 = @"bbcdefg";
50 if (stri1==stri2) {
51 NSLog(@"两个字符串相同");
52 }else{
53 NSLog(@"两个字符串不同");
54 }
55 if ([stri1 isEqualToString:stri2]) {
56 NSLog(@"两个字符串equal");
57 }else{
58 NSLog(@"两个字符串not equal");
59 }
60 // NSComparisonResult是一个枚举量
61 NSComparisonResult resut = [stri1 caseInsensitiveCompare:stri2];
62
63 NSLog(@"%ld",resut);
64 */
65 // 截取字符串
66 NSString *string1 = @" 今 天 天晴 了 ";
67 NSString *string2 = @" 今天 天阴 了 ";
68 NSLog(@"%@",[string1 substringFromIndex:2]);
69 NSLog(@"%@",[string2 substringToIndex:2]);
70
71 NSRange range = {1,3};
72 NSLog(@"%@",[string1 substringWithRange:range]);
73
74 // 拼接两个字符串
75 NSString * lastOutString = [string1 stringByAppendingString:string2];
76 NSLog(@"%@",lastOutString);
77
78 // 去掉字符串两头的空格
79 NSString *lastTrimString = [string1 stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
80 NSLog(@"%@",lastTrimString);
81
82
83 // 替换字符串的内容
84 NSString *replace = [string1 stringByReplacingOccurrencesOfString:@"今天" withString:@"昨天"];
85 NSLog(@"%@",replace);
86
87
88 // 搜索字符串第一种方法
89 NSRange range1 = [string1 rangeOfString:@"天晴"];
90 if (range1.location!=NSNotFound) {
91 NSLog(@"找到天晴了");
92 }else{
93 NSLog(@"没找到天晴");
94 }
95
96 // 搜索字符串第二种方法
97 NSRange range2 = [string1 rangeOfString:@"天晴"];
98 if (range2.length!=0) {
99 NSLog(@"找到天晴了%lu,%lu",(unsigned long)range2.location,(unsigned long)range2.length);
100 }else{
101 NSLog(@"没找到天晴");
102 }
 
 
 

IOS开发-ObjC-NSString的更多相关文章

  1. ios开发之--NSString中substringFromIndex,substringWithRange,substringToIndex方法的使用

    1,substringFromIndex 从索引0开发到到index的后面的字符 2,substringWithRange 取指定range里面的字符,左边为索引index,右边为截取的范围 3,su ...

  2. ios开发之--NSString的操作

    NSString的操作,下面记录下他的常用方法: NSString *str = @"1111111111aaaaaaaaa2222222222"; 1.查找 //查找 NSRan ...

  3. ios开发之 -- NSString指定字体高亮显示

    一个简单的小需求,就是在一个字符串里面,指定一部分字节高亮显示,代码如下: NSString *descStr = @"需要高亮显示的字符"; NSString *nickStr ...

  4. ios开发之--NSString和NSArray互转

    将string字符串转换为array数组 NSArray  *array = [Str componentsSeparatedByString:@","];//分隔符逗号 将arr ...

  5. 【iOS开发】-NSString的扩展使用

    第一:基本数据类型与字符串转换 //基本数据类型(int float,double char) 1)基本数据类型->NSString //1.int类型换换成字符串 int a = 88; NS ...

  6. iOS开发--字典(NSDictionary)和JSON字符串(NSString)之间互转

    iOS开发--字典(NSDictionary)和JSON字符串(NSString)之间互转 1. 字典转Json字符串 // 字典转json字符串方法 -(NSString *)convertToJs ...

  7. iOS开发Extra系列:NSString***

    在iOS系统,NSString可能是最常用的对象,很多用法跟其他语言不一样. 字符串对象NSString 使用格式创建字符串 1 2 3 4 5 + (id)stringWithFormat:(NSS ...

  8. iOS开发系列--打造自己的“美图秀秀”

    --绘图与滤镜全面解析 概述 在iOS中可以很容易的开发出绚丽的界面效果,一方面得益于成功系统的设计,另一方面得益于它强大的开发框架.今天我们将围绕iOS中两大图形.图像绘图框架进行介绍:Quartz ...

  9. iOS开发系列--Swift进阶

    概述 上一篇文章<iOS开发系列--Swift语言>中对Swift的语法特点以及它和C.ObjC等其他语言的用法区别进行了介绍.当然,这只是Swift的入门基础,但是仅仅了解这些对于使用S ...

  10. iOS开发系列--通讯录、蓝牙、内购、GameCenter、iCloud、Passbook系统服务开发汇总

    --系统应用与系统服务 iOS开发过程中有时候难免会使用iOS内置的一些应用软件和服务,例如QQ通讯录.微信电话本会使用iOS的通讯录,一些第三方软件会在应用内发送短信等.今天将和大家一起学习如何使用 ...

随机推荐

  1. 4D(DRG、DLG、DOM、DEM)数据 概念

    抱歉原文链接未知 Technorati 标签: DRG,DLG,DOM,DEM 以下有不同的说法,但是意思都很相近. 一. DOM (数字正射影像图):利用数字高程模型对扫描处理的数字化的航空相片.遥 ...

  2. HDU 5723 Abandoned country

    题目说每条边权值都不一样,说明最小生成树是唯一的,不存在最小期望这一说. 然后就是先求出最小生成树,随便确定一个根节点,计算出每个点的子树有多少节点,记为c[x]. 指向x的这条边被统计的次数为c[x ...

  3. HDU 3487 Play with Chain | Splay

    Play with Chain Time Limit: 6000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  4. Java项目开发第二天

    相对来说今天还是轻松了挺多的,好了,刚刚跑完步,今天心情不错,直接进入主题,就不废话了. (PS:室友都去准备迎新了,老大也是,还好都将课本留给我了,可以好好的看看书了,好好学习,天天向上.) 图形用 ...

  5. Mysql程序

    drop table if exists comp_ap; create table comp_ap as select ProjectName, ModelCode, 'AP_ACMClosed' ...

  6. 利用id来进行树状数组,而不是离散化以后的val HDU 4417 离线+树状数组

    题目大意:给你一个长度为n的数组,问[L,R]之间<=val的个数 思路:就像标题说的那样就行了.树状数组不一定是离散化以后的区间,而可以是id //看看会不会爆int!数组会不会少了一维! / ...

  7. sockaddr结构体

    sockaddr 本词条缺少名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! 一,用于存储参与(IP)Windows套接字通信的计算机上的一个internet协议(IP)地址.为了统一地 ...

  8. jsp的Get 与 SET的区别

    getParameter:获取前个页面的数据,此方法获取的数据是从前台提交过来的 getAttribute:是获取setAttribute存储的数据 ========================= ...

  9. 2015浙江财经大学ACM有奖周赛(一) 题解报告

    2015浙江财经大学ACM有奖周赛(一) 题解报告 命题:丽丽&&黑鸡 这是命题者原话. 题目涉及的知识面比较广泛,有深度优先搜索.广度优先搜索.数学题.几何题.贪心算法.枚举.二进制 ...

  10. Python3基础 Python的函数都有返回值 无指定返回值的函数 返回NONE对象

    镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.-------------------------------------- ...