NSMakeRange,substringWithRange,substringToIndex,substringFromIndex区别和联系
NS_INLINE NSRange NSMakeRange(NSUInteger loc, NSUInteger len) {
NSRange r;
r.location = loc;
r.length = len;
return r;
}
NSMakeRange是一个结构体类型,包含两个参数,位置和长度。表示字符串要传进来从哪里开始的位置和需要的长度。
substringWithRange需要传进来NSRange类型,表示从哪里开始截取和长度,返回字符串类型。例如, NSString *bankCardString = [respDict objectForKey:kQFTrackData];
NSRange bankRang = NSMakeRange(0, 3);
NSString *bankStr1 = [bankCardString substringWithRange:bankRang];
substringToIndex表示从第一个字符串开始截取,到指定长度位置,但是不包括该指定位置位置字符串,例如 NSString *balanceDateString = [respDict objectForKey:kQFTime];
NSString *ymdString = [balanceDateString substringToIndex:10];
//再从已有字符串中截取
//年
NSString *yearStr = [ymdString substringToIndex:4];
substringFromIndex表示从指定位置开始截取字符串到最后,所截取位置包含该指定位置。
NSRange monthRang = NSMakeRange(5, 2);
NSString *monthStr = [ymdString substringWithRange:monthRang];
//日
NSString *dayStr = [ymdString substringFromIndex:8];
NSMakeRange,substringWithRange,substringToIndex,substringFromIndex区别和联系的更多相关文章
- ios开发之--NSString中substringFromIndex,substringWithRange,substringToIndex方法的使用
1,substringFromIndex 从索引0开发到到index的后面的字符 2,substringWithRange 取指定range里面的字符,左边为索引index,右边为截取的范围 3,su ...
- iOS-OC-基础-NSString常用方法
NSString常用方法和属性 //compare 比较字符串升序.相同还是降序,比较原理:首先比较第一个字符(ASCII码比较),如果是升序就为升序,如果相同比较下一个字符... NSString ...
- 截取NSString字符串
NSString类中提供了这样三个方法用于获取子字符串: – substringFromIndex: – substringWithRange: – substringToIndex: 具体的使用见下 ...
- Objective-c 截取子字符串
NSString类中提供了这样三个方法用于获取子字符串: – substringFromIndex: – substringWithRange: – substringToIndex: 它们该怎么使用 ...
- 【iOS】Swift字符串截取方法的改进
字符串截取方法是字符串处理中经常使用的基本方法.熟悉iOS的朋友都知道在基础类的NSString中有substringToIndex:,substringFromIndex:以及substringWi ...
- iOS NSString类中获取子字符串
NSString类中提供了这样三个方法用于获取子字符串: – substringFromIndex://取字符串长度从0开始,当index=str.length时字符串为空"" – ...
- Foundation--NSString , array and Dictionary
一,NSString的创建 NSString*str=@" a string ";//直接创建一个字符串常量,这样创建出来的字符串不需要释放内存 NSLog(@"%@&q ...
- 数据类型 swift
1整形 Int,Int8,Int16,Int32,Int64 UInt,UInt8,UInt16,UInt32,UInt64 其中Int,UInt始终和当前平台的原生字长相同(32位机,64位机) 查 ...
- How to insert a character into a NSString
How do I insert a space to a NSString. I need to add a space at index 5 into: NString * dir = @" ...
随机推荐
- 【SpringMVC】SpringMVC系列12之数据类型转换、格式化、校验
12.数据类型转换.格式化.校验 12.1.数据绑定流程 Spring MVC 主框架将 ServletRequest 对象及目标方法的入参实例传递给 WebDataBinderFacto ...
- Rotate String
Given a string and an offset, rotate string by offset. (rotate from left to right) Example Given &qu ...
- cas单点登录用户名为中文的解决办法
当用户名为中文时,登录后返回的用户名乱码.解决这个问题只需要在客户端的CAS Validation Filter中添加下配置就行了. <init-param> <param-name ...
- Java for LeetCode 190 Reverse Bits
Reverse bits of a given 32 bits unsigned integer. For example, given input 43261596 (represented in ...
- Mysql查询比较
创建一个表: article,书编码:dealer,书店:price ,书的价格. 导入一些数据: INSERT INTO shop VALUES (1,'A',3.45),(1,'B',3.99), ...
- linux编译中的常见问题
转linux编译中的常见问题 错误提示:Makefile:2: *** 遗漏分隔符 . 停止. 原因makefile中 gcc语句前 缺少一个 tab分割符 错误提示: bash: ./makefil ...
- php 用封装类的方法操作数据库和批量删除
封装类 <?php class DBDA { public $host="localhost"; //服务器地址 public $uid="root"; ...
- angular如何在一个网页中同时启动两个app?
AngularJS深入 这个系列真不错,是我想学的深入内容. http://syaning.com/2015/07/16/dive-into-angular-1/ 一般情况下,一个页面中只有一个应用, ...
- linux tricks 之 BUILD_BUG_ON_ZERO.
------------------------------------------- 本文系作者原创, 欢迎大家转载! 转载请注明出处:netwalker.blog.chinaunix.net -- ...
- laravel框架中widget模糊查询
.配置模糊查询的路由 Route::); .在widgets.php下注册widget <?php Widget::register() { $model = Str::stu ...