Object C学习笔记8-字符串NSString之二
5. 字符串是否包含
hasPrefix 判断字符串是否以某个字符串开头
hasSuffix 判断字符串是否以某个字符串结尾
NSString *str1=@"Object C学习正在进行中.... LOVE";
if([str1 hasPrefix:@"Object"]){
NSLog(@"字符串:%@是以%@开头",str1,@"Object");
} if([str1 hasSuffix:@"LOVE"]){
NSLog(@"字符串:%@是以%@结尾",str1,@"LOVE");
} if([str1 hasSuffix:@"love"]){
NSLog(@"字符串:%@是以%@结尾",str1,@"LOVE");
}
测试例子
注意以上方法都是要区分大小写的。
6. 截取字符串
substringToIndex: 截取从索引0到特定位置处的字符串
substringFromIndex: 截取从特定位置到字符串末尾的字符串
substringWithRange:从特定位置开始截取特定长度的字符
NSString *str2=[str1 substringToIndex:];
NSLog(@"从索引0开始截取到索引3的位置: %@",str2); NSString *str3=[str1 substringFromIndex:];
NSLog(@"所索引位置4开始截取到末尾: %@",str3); NSRange range=NSMakeRange(,);
NSString *str4=[str1 substringWithRange:range];
NSLog(@"从指定位置开始截取特定长度: %@",str4); range=NSMakeRange(, );
NSString *str5=[str1 substringWithRange:range];
NSLog(@"从指定位置开始截取特定长度: %@",str5);
测试例子
这里要注意NSRange 获取NSRange的实例要使用NSRange range=NSMakeRange(2,100); 第一个参数为索引位置,第二个参数为长度,当使用substringWithRange方法的时候,如果截取的长度超过了字符串的本身长度就会报错。这里需要注意一下
7. 字符串大小写转化
uppercaseString将字符串转化为大写
lowercaseString将字符串转化为小写
capitalizedString将字符串首字母转化为大写
NSString *str1=@"object C 大小写转化 Love";
//转化为大写
NSString *str2=[str1 uppercaseString];
NSLog(@"转化为大写:%@",str2); //转化为小写
NSString *str3=[str1 lowercaseString];
NSLog(@"转化为小写: %@",str3); //首字母大写
NSString *str4=[str1 capitalizedString];
NSLog(@"首字母大写: %@",str4);
测试例子
8. 查找字符串
查找字符串可以使用rangeOfString方法,该方法返回NSRange 可以获得匹配的字符串的起始位置以及长度
NSString *str1=@"object C 大小写转化 Love";
NSString *t=[[NSString alloc] initWithCString:"Love"];
NSRange range=[str1 rangeOfString:t];
NSLog(@"Location=%d",range.location);
NSLog(@"length=%d",range.length);
测试例子
9. 替换字符串
可以使用stringByReplacingCharactersInRange方法替换特定位置的字符串
可以使用stringByReplacingOccurrencesOfString将特定字符串替换为指定字符串
NSString *str1=@"object C 大小写转化 Love";
NSString *t=[[NSString alloc] initWithCString:"Love"];
NSRange range=[str1 rangeOfString:t];
NSLog(@"Location=%d",range.location);
NSLog(@"length=%d",range.length);
NSString *str2=[str1 stringByReplacingCharactersInRange:range withString:@"XCode"];
NSLog(@"替换之后的字符串为:%@",str2);
NSString *str1=@"Love object C 大小写转化 Love";
NSString *str2=[str1 stringByReplacingOccurrencesOfString:@"Love" withString:@"XCode"];
NSLog(@"替换之后的字符串:%@",str2);
测试例子
Object C学习笔记8-字符串NSString之二的更多相关文章
- Object C学习笔记22-#define 用法
上一篇讲到了typedef 关键字的使用,可以参考文章 Object C 学习笔记--typedef用法 .而在c中还有另外一个很重要的关键字#define. 一. #define 简介 在C中利用预 ...
- Object C学习笔记24-关键字总结
学习Object C也有段时间了,学习的过程中涉及到了很多Object C中的关键字,本文总结一下所涉及到的关键字以及基本语法. 1. #import #import <> 从syste ...
- Object C学习笔记17-动态判断和选择器
当时学习Object C的时被人鄙视了一顿,说使用.NET的思想来学Object C就是狗屎:不过也挺感谢这位仁兄的,这让我学习的时候更加的谨慎.今天的学习笔记主要记录Object C中的动态类型相关 ...
- Object C学习笔记10-静态方法和静态属性
在.NET中我们静态使用的关键字static有着举足轻重的作用,static 方法可以不用实例化类实例就可以直接调用,static 属性也是如此.在Object C中也存在static关键字,今天的学 ...
- Object C学习笔记24-关键字总结(转)
学习Object C也有段时间了,学习的过程中涉及到了很多Object C中的关键字,本文总结一下所涉及到的关键字以及基本语法. 1. #import #import <> 从syste ...
- Object C学习笔记21-typedef用法
在上一章的学习过程中遇到了一个关键字typedef,这个关键字是C语言中的关键字,因为Object C是C的扩展同样也是支持typedef的. 一. 基本作用 typedef是C中的关键字,它的主要作 ...
- Object C学习笔记18-SEL,@ selector,Class,@class
本章是对上一章<<Object C学习笔记17-动态判断和选择器>>的一点补充,所以比较简单点. 一. SEL 类型 在上一篇介绍了几个方法,都只是介绍了其使用方式但是没有具体 ...
- 1.C#基础学习笔记3---C#字符串(转义符和内存存储无关)
技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com ------------------------------------- ...
- 【学习笔记】字符串—马拉车(Manacher)
[学习笔记]字符串-马拉车(Manacher) 一:[前言] 马拉车用于求解连续回文子串问题,效率极高. 其核心思想与 \(kmp\) 类似:继承. --引自 \(yyx\) 学姐 二:[算法原理] ...
- 「学习笔记」字符串基础:Hash,KMP与Trie
「学习笔记」字符串基础:Hash,KMP与Trie 点击查看目录 目录 「学习笔记」字符串基础:Hash,KMP与Trie Hash 算法 代码 KMP 算法 前置知识:\(\text{Border} ...
随机推荐
- 数组(list)分组、分段
对一个list进行分组,要求控制每组中的元素个数: 1.使用切片分组: lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 8, 7, 6, 5, 4, 3, 2, 1] #lst可为 ...
- HDFS下载数据机制的底层分析
HDFS下载数据机制的底层分析 Hadoop中的RPC(Remote Procedure Call)框架 hadoop中结点间的通信采用的是RPC. RPC框架的实现机制图解: 从hdfs下载数据的源 ...
- Java使用HTTP编程模拟多参数多文件表单信息的请求与处理
本文目的是提供Java环境下模拟浏览器页面提交多参数多文件表单请求以及解析请求的Demo代码.这里用Java提供的HttpURLConnection类做HTTP请求,再原始点可以直接使用socket. ...
- OpenStack虚拟机快照和增量备份实现
1 快照的概念一般对快照的理解就是能够将系统还原到某个瞬间,这就是快照的作用.快照针对要保存的数据分为内存快照和磁盘快照,内存快照就是保存当前内存的数据,磁盘快照就是保存硬盘的数据.快照针对保存方式又 ...
- 第二章 Google guava cache源码解析1--构建缓存器
1.guava cache 当下最常用最简单的本地缓存 线程安全的本地缓存 类似于ConcurrentHashMap(或者说成就是一个ConcurrentHashMap,只是在其上多添加了一些功能) ...
- EOS资料收集
柚子(EOS)可以理解为Enterprise Operation System,即为商用分布式应用设计的一款区块链操作系统.EOS是EOS软件引入的一种新的区块链架构,旨在实现分布式应用的性能扩展.注 ...
- 写了一个web使用向导的小插件
运行效果: 引入插件: <link rel="stylesheet" href="ez-guide.css"> <script src=&qu ...
- zoc license code
点击导航栏上的zoc-about zoc,然后: 点击enter license: 然后输入内容即可: part A: 51698/01027/34713 part B: 00937 还有很多其他 ...
- python基础整理3——前端
html概述和基本结构 html概述 HTML意思是超文本标记语言 html基本结构 一个html的基本结构如下: <!DOCTYPE html> <html lang=" ...
- Service通信
1.简介 Service通信是双向的, 它不仅可以发送消息, 同时还会有反馈. 所以service包括两部分, 一部分是请求方( Clinet) , 另一部分是应答方/服务提供方( Server) . ...