NSString类中提供了这样三个方法用于获取子字符串:

NSString *str = @"12345";

1. // NSString *subString0 = [str substringFromIndex:-1];   //会越界

NSString *subString1 = [str substringFromIndex:0];       //@"12345"

NSString *subString2 = [str substringFromIndex:1];       //@"2345"

NSString *subString3 = [str substringFromIndex:4];       //@"5"

NSString *subString4 = [str substringFromIndex:5];       //@""

// NSString *subString5 = [str substringFromIndex:6];   //越界

2.// NSString *subString10 = [str substringToIndex:-1];    //越界

NSString *subString11 = [str substringToIndex:0];         //@""

NSString *subString12 = [str substringToIndex:1];         //@"1”

NSString *subString13 = [str substringToIndex:4];         //@"1234“

NSString *subString14 = [str substringToIndex:5];         //@"12345”

// NSString *subString15 = [str substringToIndex:6];     //越界

3.NSRange range1 = NSMakeRange(-1, 5);

NSRange range2 = NSMakeRange(0, 6);

NSRange range3 = NSMakeRange(0, 5);

NSRange range4 = NSMakeRange(1, 4);

NSRange range5 = NSMakeRange(0, 0);

NSRange range6 = NSMakeRange(4, 1);

//NSString *subString31 = [str substringWithRange:range1]; //越界

//NSString *subString32 = [str substringWithRange:range2]; //越界

NSString *subString33 = [str substringWithRange:range3];   //@"12345“

NSString *subString34 = [str substringWithRange:range4];   //@"2345”

NSString *subString35 = [str substringWithRange:range5];   //@""

NSString *subString36 = [str substringWithRange:range6];   //@"5”

iOS NSString类中获取子字符串的更多相关文章

  1. shell 中获取子字符串的正确姿势

    前言 shell 取子串的方式有点特别,你写的匹配字符串是需要从头开始匹配的,第一个匹配到了才开始匹配下一个,这个类似于python中的match的工作方式. 1,获取子串有两种方式 使用字符串匹配的 ...

  2. JavaScript中,提取子字符串方法:Slice、Substring、Substr的比较。

    在JavaScript中,提取子字符串主要是通过 Slice.Substring.Substr 三个方法之一. // slice // 语法: string.slice(beginSlice [, e ...

  3. asp.net 类库中获取session c#类中获取session

    asp.net  类库中获取session c#类中获取session 1. 先引入命名空间 using System.Web; using System.Web.SessionState; 在使用H ...

  4. spring的普通类中获取session和request对像

    在使用spring时,经常需要在普通类中获取session,request等对像. 1.第一钟方式,针对Spring和Struts2集成的项目: 在有使用struts2时,因为struts2有一个接口 ...

  5. 替换NSString类中的stringWithFormat:方法

    替换NSString类中的stringWithFormat:方法 先给出源码: YXUseful.h // // YXUseful.h // NSString // // Copyright (c) ...

  6. spring在普通类中获取session和request

    在使用spring时,经常需要在普通类中获取session,request等对像.比如一些AOP拦截器类,在有使用struts2时,因为struts2有一个接口使用org.apache.struts2 ...

  7. Java中String类常用方法(字符串中的子字符串的个数)

    重点内容 4种方法: 1.int indexOf(String str)返回第一次出现的指定子字符串在此字符串中的索引. 2.int indexOf(String str, int startInde ...

  8. js实现截取或查找字符串中的子字符串

    获取 答案: var string0="sss.sscdyfasdfdgfg";//sscdy获取 ,); 答案是采用substr方法. 定义和用法:substr方法用于返回一个从 ...

  9. IOS从视频中获取截图

    从视频中获取截图: NSString *movpath =[[NSBundle mainBundle] pathForResource:@”iosxcode4″ ofType:@”mov”]; mpv ...

随机推荐

  1. OpenCV2.x自学笔记——Qt5.5.1打包exe

    [简易步骤] 1.Release模式下生成exe,在release文件夹内,如jujube.exe 2.exe单独拷贝到一个文件夹,如D:\jujube\jujube.exe 3.打开Qt 官方开发环 ...

  2. c++的函数模板和类模板

    函数模板和普通函数区别结论: 函数模板不允许自动类型转化 普通函数能够进行自动类型转换 函数模板和普通函数在一起,调用规则: 1 函数模板可以像普通函数一样被重载 2 C++编译器优先考虑普通函数 3 ...

  3. hdu 1859 最小长方形

    Description 给定一系列2维平面点的坐标(x, y),其中x和y均为整数,要求用一个最小的长方形框将所有点框在内.长方形框的边分别平行于x和y坐标轴,点落在边上也算是被框在内. Input ...

  4. JavaScript获取浏览器信息的方法

    Window有navigator对象让我们得知浏览器的全部信息.我们可以利用一系列的API函数得知浏览器的信息. JavaScript代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 1 ...

  5. User already has more than 'max_user_connections' active connections

    vi /etc/my.cnf修改  max_user_connections 参数的数值,重启 MySQL 服务器

  6. boost log库

    http://blog.csdn.net/sheismylife/article/category/1820481

  7. C/C++语言的标准库函数malloc/free与运算符new/delete的区别

    概括地说 1.malloc与free是C++/C的标准库函数,new/delete是C++的运算符,它们都可用于申请动态内存和释放内存. 2.对于非内部数据类型的对象而言,只用malloc/free无 ...

  8. 关于GVIM的配置。

    最近开始考虑从常用的 Dev-Cpp 和 Visual Studio 开发环境中转到gvim+gcc+gdb. 我一直觉得IDE很好方便,不是很明白别人这样的配置.但还是开始有意识的去尝试更换环境. ...

  9. mysql无法启动,一直处于启动状态解决【Mac osx 】

    最近,遇到一个问题,就是mac 使用homebrew 安装了mysql,今天使用mysql.server start,mysql无法启动了,restart还找不到pid,说明服务并没有启动! 错误如下 ...

  10. Windows API 之 GetModuleHandle

    Retrieves a module handle for the specified module. The module must have been loaded by the calling ...