NSString几个函数
第一、判断是否包含前缀于后缀
NSString *str=@"hello andy yang";
if([str hasPrefix:@"hello"])
{
NSLog(@"the prefix is hello");
}
if([str hasSuffix:@"yang"])
{
NSLog(@"the suffix is yang");
}
第二、NSRange
typedefstruct _NSRange {
NSUInteger location; //开始位置
NSUInteger length; //长度
} NSRange;
NSRange的定义:
NSRange range2;
range2.location = 17;
range2.length = 4;
NSLog(@"%lu and %lu",range2.location,range2.length);
//用NSMakeRange来初始化
NSRange rang1=NSMakeRange(12, 23);
NSLog(@" %lu and %lu",rang1.location,rang1.length);
第三、 rangeOfString函数的使用
NSRange range;
range=[str rangeOfString:@"andy"];
NSLog(@"%lu and %lu",range.location,range.length);
第四、compare实现函数的比较
NSString *str1=@"AA";
NSString *str2=@"aBB";
if ([str2 compare:str1])
{
NSLog(@"%@ is larger than %@",str1,str2);
}else
{
NSLog(@"%@ is larger than %@",str2,str1);
}
第五、NSMutabelString 继承自NSString
- (void)appendString:(NSString *)aString;
- (void)appendFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2);
sample code:
NSMutableString
*str=[
NSMutableString
stringWithCapacity
:
12
];
[str appendString:@"hello"];
NSLog(@"str is %@",str);
[str appendFormat:@" andy yang %d",11];
NSLog(@"str is %@",str);
- (void)deleteCharactersInRange:(NSRange)range; 删除字符串
NSMutableString *str1=[NSMutableString stringWithFormat:
@"hello what is your name?"];
NSRange range;
range=[str1 rangeOfString:@"what"];
NSLog(@"start is %lu,length is %lu",range.location,range.length);
[str1 deleteCharactersInRange:range];
NSLog(@"str is %@",str1);
NSString几个函数的更多相关文章
- swift 学习(二)基础知识 (函数,闭包,ARC,柯里化,反射)
函数 func x(a:Int, b:Int) {} func x(a:Int, b:Int) -> Void {} func x(a:Int, b:Int) ->(Int,Int ...
- OC可变參数的函数实现va_start、va_end、va_list的使用
一.简单介绍 我们常常在编程的时候看见类似这种代码,如图1.1 图1.1 或者是这种可变參数,如图1.2 图1.2 二.基本知识介绍 在学习怎样写这样的格式的函数前,先简介几个经常使用的宏: 下面摘自 ...
- 【原】AFNetworking源码阅读(六)
[原]AFNetworking源码阅读(六) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 这一篇的想讲的,一个就是分析一下AFSecurityPolicy文件,看看AF ...
- 【原】AFNetworking源码阅读(二)
[原]AFNetworking源码阅读(二) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇中我们在iOS Example代码中提到了AFHTTPSessionMa ...
- 1.2.1 OC概述
本文并非最终版本,如想关注更新或更正的内容,详见文末的联系方式,如有疏忽和遗漏,欢迎指正. 本文相关目录:(链接为简书链接) ====================== 所属文集:1.2 Objec ...
- AFNetworking到底做了什么
写在开头: 作为一个iOS开发,也许你不知道NSUrlRequest.不知道NSUrlConnection.也不知道NSURLSession...(说不下去了...怎么会什么都不知道...)但是你一定 ...
- UITextView: 响应键盘的 return 事件(收回键盘)
UITextView: 响应键盘的 return 事件(收回键盘) 此篇文章将要介绍UITextView: 响应键盘的 return 事件(收回键盘)的相关介绍,具体实例请看下文 UITextView ...
- 论文第4章:iOS绘图平台的实现
面向移动设备的矢量绘图平台设计与实现 Design and Implementation of Mobile Device-oriented Vector Drawing Platform 引用本论文 ...
- Objective-C 2.0的运行时编程
Objective-C 2.0 的运行时环境叫做Morden Runtime,iOS 和Mac OS X 64-bit 的程序都运行在这个环境,也就是说Mac OS X 32-bit 的程序运行在旧的 ...
随机推荐
- Spark Streaming源码解读之Receiver生成全生命周期彻底研究和思考
本期内容 : Receiver启动的方式设想 Receiver启动源码彻底分析 多个输入源输入启动,Receiver启动失败,只要我们的集群存在就希望Receiver启动成功,运行过程中基于每个Tea ...
- Excel 日期转换
public static void importExcel2(File file) throws Exception, IOException { Workbook book = Workbook. ...
- C++学习基础三——迭代器基础
迭代器分为两种:一种是iterator,另一种是const_iterator.两者都可进行访问容器中的元素,不同之处是:(1)const_iterator类型只能用于读取容器内的元素,不能更改其值:而 ...
- JAXB 2.0 API is being loaded from the bootstrap classloader
在使用webservice,mule esb等需要jaxb的项目里经常会出现 JAXB 2.0 API is being loaded from the bootstrap classloader这个 ...
- eval()与jQuery.parseJSON()的差别以及常见的解析缺少分号的问题
在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象 http://blog.163.com/wujicaiguai%40126/blog/static/1701715 ...
- HDU 3065 病毒侵袭持续中(AC自动机)
这题数据太水,一开始没有加上Get的方法也能AC..话说AC自动机中一定要注意加上Get的方法!(不然,同一个后缀的其他单词就没被算上了.) 代码如下: #include <stdio.h> ...
- 在VMware上安装Ubuntu14.04 , Docker
最近在公司做了一个关于 How to use Docker to deploy a java-based website 的KT,总结如下: 准备材料(Linux+64bit) 1. Tomcat安装 ...
- js 和 c# 方法互调
js访问c#代码 1 js <script type="javascript"><%=test()%></script> c# public ...
- DrawingControl控件在Add Page时报故障的问题
Visio二次开发用到了Drawing Control控件.在控件上添加新页面时,visual编译器报内存保护故障“尝试读取或写入受保护的内存.这通常指示其他内存已损坏.”,这个问题困扰了我很久,最后 ...
- 四则运算(Android)版
实验题目: 将小学四则运算整合成网页版或者是Android版.实现有无余数,减法有无负数.... 设计思路: 由于学到的基础知识不足,只能设计简单的加减乘除,界面设计简单,代码量少,只是达到了入门级的 ...