iOS 字符串NSString 的一些常用方法
一、字符串创建
1、 NSString *str1 = [NSString new];
2、 NSString *str2 = @"字符串内容";
二、字符串拼接
1、 NSString *str3 = [NSString stringWithFormat:@"%@",str2];
2、字符串比较:isEqualToString 比较两个字符串内容是不是相等;
三、字符串的比较
- (NSComparisonResult)compare:(NSString *)string; //区分大小写比较
- (NSComparisonResult)compare:(NSString *)string options:(NSStringCompareOptions)mask; //附带条件比较
比较返回的枚举有3个值:NSOrderedAscending (小于),NSOrderedSame (相等),NSOrderedDescending (大于)
NSString *str1 = @"Goods";
NSString *str2 = @"Hello";
if ([str1 commonPrefixWithString:str2 options:NSCaseInsensitiveSearch | NSNumericSearch] == NSOrderedSame)
{
NSLog(@"不区分大小写比较相同");
//多个比较条件 中间用"|"分开
} // - (BOOL)hasPrefix:(NSString *)aString; 判断字符串是否以开头
// - (BOOL)hasSuffix:(NSString *)aString; 判断字符串是否以结尾
// - (NSRange)rangeOfString:(NSString *)aString; //字符串中查找字符
// NSString *uppercaseString; 将字符串全改为大写
// NSString *lowercaseString; 将字符串全改为小写
// NSString *capitalizedString;只将字符串首字母改为大写
// NSArray *arr = [str1 componentsSeparatedByString:@","] //字符串 以逗号分隔成数组
// 字符串长度获取:length
NSString *str1 = @"abc";
NSString *str2 = @"abe";
unsigned long len =(int)[str1 length];
NSLog(@"str1的长度为:%lu",len); //len =3; // 字符串比较:isEqualToString比较两个字符串的内容是否相同;
BOOL isE = [str2 isEqualToString: str1];
NSLog(@"%d",isE); //比较内容是否相等则为1,地址也相等,不相等为0; // compare:比较两个字符串的大小
int ste = [str1 compare:str2];
NSLog(@"%d",ste);//比较AssIc码值,相等为O,str1<str2= -1;否则为1; // 字符串开头:hasPrefix //字符串结尾:hasSuffix
BOOL isf = [str2 hasPrefix:@"ab"];
BOOL ise = [str2 hasSuffix:@"be"];
NSLog(@"字符串开头%d,字符串结尾:%i",isf,ise);//判断字符串开头是否有 “ab”; // 插入:insertString:atIndex:
//创建一个可变字符串str3
NSMutableString *str3 = [[NSMutableString alloc]initWithString:@"zhangsan"];
[str3 insertString:@"---" atIndex:];
NSLog(@"%@",str3);//str3 = zhang---san; // 拼接:appendFormat:
//str3必须为可变字符串
[str3 appendFormat:@"www"];
//[str3 appendString:@"one"];
NSLog(@"%@",str3); // 移除:deleteCharactersInRange:
[str3 deleteCharactersInRange:NSMakeRange(, )];
NSLog(@"%@",str3); // 替换:replaceCharactersInRange: withString:
[str3 replaceCharactersInRange:NSMakeRange(, ) withString:@" love "];
NSLog(@"%@",str3); // 截取:substringWithRange: 0为第一个位置
NSString *str4 = [str3 substringFromIndex:];
NSLog(@"%@",str4); //form冲那个位置开始
NSString *str5 = [str4 substringToIndex:];
NSLog(@"%@",str5); //开头到那个位置
NSString *str6 = [str3 substringWithRange:NSMakeRange(, )];
NSLog(@"%@",str6); //起点位置和 长度;
iOS 字符串NSString 的一些常用方法的更多相关文章
- 字符串NSString与NSMutableString常用方法
NSString 1.初始化 NSString *str1 = @"a OC Program"; 2.初始化 NSString *str2 = [[NSString alloc] ...
- iOS字符串NSString中去掉空格(或替换为某个字符串)
http://blog.sina.com.cn/s/blog_6f29e81f0101qwbk.html [问题描述] 今天请求服务器返回的字段中含有空格,这空格是服务器开发人员不小心往数 ...
- iOS -- 字符串(NSString *)转uint8_t的两种方法
// 第一种 NSString *connID = ((Collector *)weakSelf.globalMutableArray[i]).orignalConnID; ] intValue]; ...
- iOS开发--字典(NSDictionary)和JSON字符串(NSString)之间互转
iOS开发--字典(NSDictionary)和JSON字符串(NSString)之间互转 1. 字典转Json字符串 // 字典转json字符串方法 -(NSString *)convertToJs ...
- iOS - OC NSString 字符串
前言 @interface NSString : NSObject <NSCopying, NSMutableCopying, NSSecureCoding> @interface NSM ...
- ios 常用字符串NSString的操作
//将NSData转化为NSString NSString* str = [[NSString alloc] initWithData:response encoding:NSUTF8S ...
- iOS学习之字符串(NSString)的截取、匹配、分隔
截取 NSString *str1 = @"this is zero"; 1.从第三个字符开始,截取长度为2的字符串.........注:空格算作一个字符 NSString *st ...
- iOS基础-NSString及NSMutableString剖析
一.NSString头文件 NSString : NSObject 实现协议: NSCopying/NSMutableCopying/NSSecureCoding 类别: //扩展类别 NSStrin ...
- iOS常用---NSString,NSMutabuleString
普通的创建字符串: NSString *string =[[NSString alloc]init]; //创建一个空的字符串,即 @“” 一 .字符串读取本地文件: 参数一: 文件地址 参数二: 文 ...
随机推荐
- 大学生Linux常用命令(一)
大学生Linux常用命令(一) 1.1 命令格式 命令格式一般为---命令名 [选项] [参数1] [参数2]- 例如:cp -I file1 cp为命令名,-l为选项,file1为参数. 其中,命令 ...
- React——JSX
一.将表达式嵌套在JSX中 要在JSX中内嵌js表达式只需要将js表达式放在{}中,例如: const element = <h1>this is a JSX {sayName()}< ...
- GitLab篇之备份还原
1. GitLab备份配置 输入以下命令,打开gitlab配置文件 [root@code-server ~]# vim /etc/gitlab/gitlab.rb 修改以下配置,gitlab有自动清理 ...
- jmeter控制器(二)
循环控制器: 顾名思义就是做循环控制的,与线程组的循环一样的,不过这里的循环控制器是用在一个单独的模块的,而在线程组里面的循环是作用于全局的.循环控制器里面设置的循环次数是局部有效,只控制自己范围内的 ...
- python-GUI之tkinter的学习
最近看了哔哩哔哩的python的学习,直接看代码吧,以后会更新 先来个基础的 import tkinter as tk #导入包 app = tk.Tk() #抽象出一个GUI app.title(& ...
- Netty源码分析第5章(ByteBuf)---->第7节: page级别的内存分配
Netty源码分析第五章: ByteBuf 第六节: page级别的内存分配 前面小节我们剖析过命中缓存的内存分配逻辑, 前提是如果缓存中有数据, 那么缓存中没有数据, netty是如何开辟一块内存进 ...
- Flink架构分析之资源分配
Task Slot Flink中每个真正执行任务的TaskManager都是一个JVM进程,其在多线程环境中执行一个或者多个子任务.为了控制一个JVM同时能运行的任务数量,flink引入了ta ...
- 使用sql查询mysql/oracle/sql server/gp数据库中指定表的字段信息(字段名/字段类型/字段长度/是否是主键/是否为空)
1,根据数据库类型拼接不同URL /** * 根据类型不同拼接连接的URL * @param dbType 1:mysql.2:oracle.3:sql server.4:gp * @param ip ...
- t团队项目计划
团队的backlog: .用户登录网站后,可以选择是买或者卖, (1)买 点击链接,可以分类浏览商品信息,也可以按价钱筛选 (2)卖 点击链接,选择要挂出的商品种类,填写信息(名称.价格.数量等)接着 ...
- c#窗体移动与窗体阴影效果
//步骤//1.导入代码//2.事件中添加form_1mousedown函数//3.在load函数中定义AnimateWindow语句,注意有两个引用.//4.DllImport若有错误,按shift ...