小白学开发(iOS)OC_ 字符串的获取 (2015-08-11)
//
// main.m
// 字符串的获取
//
// Created by admin on 15/8/13.
// Copyright (c) 2015年 admin. All rights reserved.
//
#import <Foundation/Foundation.h>
/*
1. 获取字符串长度
2. 依据字符串索引获得单个字符 //
这里的索引 就是下标
3. 依据索引获得一个字符串
4. 依据子串获得子串在还有一个字符串中的索引位置
5. 依据字符串。获得字符串的范围
*/
int main(int argc,
const char * argv[]) {
@autoreleasepool {
// 1. 获取字符串长度
NSString *str1 = @"www.baidu.com";
NSUInteger length = [str1
length]; // NSUIteger 表示的是一个无符号的整型
NSLog(@"length = %lu",length);
/* 2. 依据索引获得字符串中的单个字符
注意:
> 给定的索引值必须在0到长度之间。否组会导致异常Range or index out of bounds
> 假设索引值为负。那么获得的值是个负数
*/
unichar c = [str1
characterAtIndex:];
NSLog(@"获得的字符串是:%c",c);
// 3. 依据索引值获得字符串的一个子串
//
从索引開始。包含索引取后面的字符串
NSString *tmpstr2 = [str1
substringFromIndex:];
//
从开头取字符串到索引位置,不包含索引
NSString *tmpstr3 = [str1
substringToIndex:];
// NSRange是个结构体,取字符串的范围,第一个參数为从哪个索引值開始,第二个參数表示取多长
,};
NSString *tmpstr4 = [str1
substringWithRange:s];
NSLog(@"tmpstr2 = %@",tmpstr2);
NSLog(@"tmpstr3 = %@",tmpstr3);
NSLog(@"tmpstr4 = %@",tmpstr4);
// 4. 获得子串在还有一个字符串中的索引位置
NSString *tmpstr5 =
@"bai";
//
在字符串中寻找子串。并将索引起始位置location和长度length存入到结构体中
NSRange tmpRange = [str1
rangeOfString:tmpstr5];
// 分别打印
NSLog(@"location = %lu, length = %lu",tmpRange.location,tmpRange.length);
//
能够使用NSStringFromRange 把一个Range结构体转换成字符串
NSString *tmpstr6 =
NSStringFromRange(tmpRange);
NSLog(@"tmpstr6 = %@",tmpstr6);
//
推断是否找到
if (tmpRange.location ==
NSNotFound) {//enum {NSNotFound = NSIntegerMax};
NSLog(@"tmpstr5不在str1中");
}else
{
NSLog(@"rangeOfString %@",tmpstr6);
}
// 5. 获得子串索引范围
//
第一个參数为子串,第二个參数为 选择搜索的方法
NSRange tmpRange2 = [str1
rangeOfString:@"com"
options:NSCaseInsensitiveSearch];
NSRange tmpRange3 = [str1
rangeOfString:@"com"];
NSLog(@"tmpRange2 = %@",NSStringFromRange(tmpRange2));
NSLog(@"tmpRange3 = %@",NSStringFromRange(tmpRange3));
}
;
}
小白学开发(iOS)OC_ 字符串的获取 (2015-08-11)的更多相关文章
- 小白学开发(iOS)OC_ 字符串重组(2015-08-13)
// // main.m // 字符串重组 // // Created by admin on 15/8/13. // Copyright (c) 2015年 admin. All right ...
- 小白学开发(iOS)OC_ 字符串写入文件(2015-08-13)
// // main.m // 字符串写入文件 // // Created by admin on 15/8/13. // Copyright (c) 2015年 admin. All rig ...
- 小白学开发(iOS)OC_ 经常使用结构体(2015-08-14)
// // main.m // 经常使用结构体 // // Created by admin on 15/8/13. // Copyright (c) 2015年 admin. All rig ...
- 小白学开发(iOS)OC_ block数据类型(2015-08-08)
// // main.m // block数据类型 // // Created by admin on 15/8/12. // Copyright (c) 2015年 admin. All r ...
- 小白学开发(iOS)OC_ 使用继承来扩充类(2015-08-07)
// // main.m // 使用继承来扩充类 // // Created by admin on 15/8/12. // Copyright (c) 2015年 admin. All ri ...
- 小白学开发(iOS)OC_ SEL数据类型(2015-08-10)
// // main.m // SEL数据类型 // // Created by admin on 15/8/12. // Copyright (c) 2015年 admin. All rig ...
- 小白学react之网页获取微信用户信息
通过上一篇<小白学react之EJS模版实战>我们学习了怎样通过EJS模版生成我们高定制化的index.html文件. 本篇我们将会继续延续我们的alt-tutorial项目的实战计划.去 ...
- 第十四章 web前端开发小白学爬虫
老猿从事IT开发快三十年了,接触互联网也很久了,但自己没有做过web前端开发,只知道与前端开发相关的一些基本概念,如B/S架构.html标签.js脚本.css样式.xml解析.cookies.http ...
- ios开发——实用技术篇OC篇&获取设备唯一标识
获取设备唯一标识 WWDC 2013已经闭幕,IOS7 Beta随即发布,界面之难看无以言表...,简直就是山寨Android. 更让IOS程序猿悲催的是,设备唯一标识的MAC Address在IOS ...
随机推荐
- C++ 异常处理(try catch throw)、命名空间
一.c++工具 模板(函数模板.类模板).异常处理.命名空间等功能是c++编译器的功能,语言本身不自带,这些功能已经成为ANSI C++标准了,建议所有的编译器都带这些功能,早期的c++是没有这些功能 ...
- Java入门第38课——猜字母游戏之设计程序结构
问题 本案例需要实现猜字母游戏程序中的程序结构 方案 分析猜字母游戏可以看出,程序首先需要随机产生5个不同的字母作为需要猜测的结果,因此,可以先定义一个方法,以实现此功能: ...
- spring cloud 概念
微服务构架需要使用场景: 1.可以将一个系统拆分成几个系统. 2.每个子系统可以部署多个应用,多个应用之间可以使用负载均衡. 3.需要一个服务注册中心,所有的服务都在一个注册中心注册,负载均衡也是通过 ...
- CAD参数绘制直线(网页版)
用户可以在CAD控件视区任意位置绘制直线. 主要用到函数说明: _DMxDrawX::DrawLine 绘制一个直线.详细说明如下: 参数 说明 DOUBLE dX1 直线的开始点x坐标 DOUBLE ...
- Javascript中的For循环
在开发的过程中,遍历是一个经常遇到的.而for循环则是Javascript工具箱里一个好用的,也常用的工具.每个人的习惯不同,for循环的写法也不尽相同. 1.不写声明变量的写法: for(var i ...
- linux系统查看网络连接情况
netstat命令状态说明: CLOSED 没有使用这个套接字[netstat 无法显示closed状态] LISTEN 套接字正在监听连接[调用listen ...
- Zabbix微信告警
Zabbix微信告警 摘要 Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbix结合微信作为主要的告警方式,这样可以及时有效的把告警信 ...
- ORM之创建数据库
ORM之创建数据库 样板:创建表名为UserInfo的表,表的主键可自行写,Django的ORM也可自行创建. from django.db import models class UserInfo( ...
- windows事件查看器
如果一个软件发生异常,软件本身没有提示异常信息, 需要从事件查看器中查看产生的错误事件 运行输入eventvwr或者win + X
- (转载)C++ string中find() ,rfind() 等函数 用法总结及示例
string中 find()的应用 (rfind() 类似,只是从反向查找) 原型如下: (1)size_t find (const string& str, size_t pos = 0) ...