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之二的更多相关文章

  1. Object C学习笔记22-#define 用法

    上一篇讲到了typedef 关键字的使用,可以参考文章 Object C 学习笔记--typedef用法 .而在c中还有另外一个很重要的关键字#define. 一. #define 简介 在C中利用预 ...

  2. Object C学习笔记24-关键字总结

    学习Object C也有段时间了,学习的过程中涉及到了很多Object C中的关键字,本文总结一下所涉及到的关键字以及基本语法. 1.  #import #import <> 从syste ...

  3. Object C学习笔记17-动态判断和选择器

    当时学习Object C的时被人鄙视了一顿,说使用.NET的思想来学Object C就是狗屎:不过也挺感谢这位仁兄的,这让我学习的时候更加的谨慎.今天的学习笔记主要记录Object C中的动态类型相关 ...

  4. Object C学习笔记10-静态方法和静态属性

    在.NET中我们静态使用的关键字static有着举足轻重的作用,static 方法可以不用实例化类实例就可以直接调用,static 属性也是如此.在Object C中也存在static关键字,今天的学 ...

  5. Object C学习笔记24-关键字总结(转)

    学习Object C也有段时间了,学习的过程中涉及到了很多Object C中的关键字,本文总结一下所涉及到的关键字以及基本语法. 1.  #import #import <> 从syste ...

  6. Object C学习笔记21-typedef用法

    在上一章的学习过程中遇到了一个关键字typedef,这个关键字是C语言中的关键字,因为Object C是C的扩展同样也是支持typedef的. 一. 基本作用 typedef是C中的关键字,它的主要作 ...

  7. Object C学习笔记18-SEL,@ selector,Class,@class

    本章是对上一章<<Object C学习笔记17-动态判断和选择器>>的一点补充,所以比较简单点. 一. SEL 类型 在上一篇介绍了几个方法,都只是介绍了其使用方式但是没有具体 ...

  8. 1.C#基础学习笔记3---C#字符串(转义符和内存存储无关)

    技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com ------------------------------------- ...

  9. 【学习笔记】字符串—马拉车(Manacher)

    [学习笔记]字符串-马拉车(Manacher) 一:[前言] 马拉车用于求解连续回文子串问题,效率极高. 其核心思想与 \(kmp\) 类似:继承. --引自 \(yyx\) 学姐 二:[算法原理] ...

  10. 「学习笔记」字符串基础:Hash,KMP与Trie

    「学习笔记」字符串基础:Hash,KMP与Trie 点击查看目录 目录 「学习笔记」字符串基础:Hash,KMP与Trie Hash 算法 代码 KMP 算法 前置知识:\(\text{Border} ...

随机推荐

  1. zabbix日常监控(监控缓存)

    实现的方法大体类似: 多谢博主的文章,免了不少时间! 摘抄博文地址:https://www.cnblogs.com/sixiweb/p/6893858.html https://www.cnblogs ...

  2. jQuery: 刨根问底 attr and prop两个函数的区别

    In this short post I will explain the difference between attributes and properties in HTML. The .pro ...

  3. Elasticsearch 填坑记

    前言 技术的发展日新月异,传统企业数据库Oracle.SqlServer.DB2,Mysql等在今日不断的被各种大厂自研数据库取代,当然也有类似Elasticsearch等优秀的满足海量数据所使用的开 ...

  4. 团队作业4(Alpha版本)

    项目名称:音乐播放器 项目成员: 张慧敏(201421122032) 苏晓薇(201421031033) 欧阳时康(201421122050) 会议记录:  主要讨论任务的分配和实现过程中已实现和未实 ...

  5. hihocoder [Offer收割]编程练习赛61

    [Offer收割]编程练习赛61 A:最小排列 给定一个长度为m的序列b[1..m],再给定一个n,求一个字典序最小的1~n的排列A,使得b是A的子序列. 贪心即可,b是A的子序列,把不在b中的元素, ...

  6. P3558 [POI2013]BAJ-Bytecomputer

    题目描述 A sequence of integers is given. The bytecomputer is a device that allows the following operati ...

  7. macaca常见错误排查

    1.Error: cannot resolve path (or pattern) 'macaca-test' 这是因为执行run命令的时候未进入用例目录 C:\Users\Tony\node_mod ...

  8. Sequelize-nodejs-1-getting started

    Sequelize is a promise-based ORM for Node.js v4 and up. It supports the dialects PostgreSQL, MySQL, ...

  9. Lambda表达式学习(2)

    在. net3. 5里面 , 委托的定义和实现被大大的简化了!使用关键字Func或Action就可以定义一个委托 , 使用拉姆达表达式就可以实现一个具体的委托. Func关键字是用来定义一个有返回值的 ...

  10. js input框输入1位数字后自动跳到下一个input框聚焦

    // input框输入1位数字后自动跳到下一个input聚焦 function goNextInput(el){ var txts = document.querySelectorAll(el); f ...