objective-c 字符串基本操作
.定义一个字符串a, 截取a 的某一个部分,复制给b, b必须是int型 NSString *a = @"1.2.30"; int b= [[a substringWithRange:NSMakeRange(,)] intValue]; NSLog(@"a:%@ n",a ); NSLog(@"b:%d",b ); 解析如下:substringWithRange: 专门截取字符串的一块肉
NSMakeRange(,) 从第4个字符开始截取,长度为2个字符,(字符串都是从第0个字符开始数的哦~!) b = [a intValue]; 将 a 转换为 整数型 b = [a floatValue]; 将 a 转换为 小数型 b = [a boolValue]; 将 a 转换为 布尔型(true / false) b = [a integerValue]; 将 a 转换为 整数型 b = [a longLongValue]; 将 a 转换为 长整型 .字符串截取到第n位 (substringToIndex: n)(第n 位不算再内) - (void)viewDidLoad { NSString *a = @"i like long dress"; NSString *b = [a substringToIndex:]; NSLog(@"n b: %@",b); } .字符串从第n 位开始截取,直到最后 (substringFromIndex:n)(包括第 n 位) - (void)viewDidLoad { NSString *a = @"i like long dress"; NSString*b = [a substringFromIndex:]; NSLog(@"n b: %@",b); } .从某一个字符串中的一个字符串开始截取 - (void)viewDidLoad { NSString *a ="/pubic/evdaily.nsf/vwtrymaindocid/8E88469482579180035442A/$file/测试帐号及信息22.docx"; NSRange range = [arangeOfString:@"$file/"];//获取$file/的位置 NSString *b = [a substringFromIndex:range.location +
range.length];//开始截取 NSLog(@"n b: %@",b); }
当NSString为纯数字的时候可以用下面的方法:
//判断是否为整形:
- (BOOL)isPureInt:(NSString*)string{
NSScanner* scan = [NSScanner scannerWithString:string];
int val;
return[scan scanInt:&val] && [scan isAtEnd];
}
//判断是否为浮点形:
- (BOOL)isPureFloat:(NSString*)string{
NSScanner* scan = [NSScanner scannerWithString:string];
float val;
return[scan scanFloat:&val] && [scan isAtEnd];
}
更复杂点的Question:
I have an NSString like so:
@"200hello" or @"0 something"
What I would like to be able to do is take the first occuring number in the NSString and convert it into an int.
So that @"200hello" would become int = .
and @"0 something" would become int = .
Answer1(数字和字符排序不规则):
intvalue;
BOOL success=[[NSScannerscannerWithString:@"1000safkaj"]scanInteger:&value];
If the number is not always at the beginning:
NSCharacterSet* nonDigits = [[NSCharacterSet decimalDigitCharacterSet] invertedSet];
int value = [[@"adfsdg1000safkaj" stringByTrimmingCharactersInSet:nonDigits] intValue];
Answer2(数字总是在字符前):
If the int value is always at the beginning of the string, you can simply use intValue.
NSString*string=@"123hello";
int myInt = [string intValue];
http://www.dkankan.com/archives/4602
objective-c 字符串基本操作的更多相关文章
- Objective的字符串拼接 似乎没有Swift方便,但也可以制做一些较为方便的写法
NSString *str1 = @"字符串1"; NSString *str2 = @"字符串2"; //在同样条件下,Objective的字符串拼接 往往只 ...
- JAVASE02-Unit01: API文档 、 字符串基本操作
API文档 . 字符串基本操作 文档注释 package day01; /** * 文档注释只能定义在三个地方: * 类,方法,常量 * * 文档注释是功能注释,用来说明功能作用 * 在类上使用的目的 ...
- 关于python字符串基本操作
python字符串基本操作,比如字符串的替换.删除.截取.复制.连接.分割等.都是一些关于字符串的一些方法.下面来列举一些,相信对学习python还是有些帮助的. 1.去除空格--strp(): &g ...
- 舌尖上的javascript数组和字符串基本操作
Javascript数组基本操作 Javascript中的数组是一种特殊的对象,用来表示偏移量的索引是该对象的属性,索引可能是整数,然而这些数字索引在内部被转换为字符串类型,这是因为javascrip ...
- OC字符串基本操作
不可变的字符串的修改方法有返回值(重新指向新的字符串地址) 可变的字符串的修改方法没有返回值(修改字符串本身) // NSString 不可变字符串 // 1.创建字符串对象 // 使用初始化方法创建 ...
- Windows内核 字符串基本操作
驱动程序中字符串操作涉及到ASCII字符串.宽字符串,还有DDK定义的ANSI_STRING数据结构和UNICODE_STRING数据结构. 1)ASCII字符串和宽字符串 在应用程序中使用两种字符: ...
- Python 字符串基本操作
字符串是Python的一种基本类型,字符串的操作包括字符串格式化输出.字符串的截取.合并,字符串的查找和替换等操作. 字符串定义 Python中有3种表示字符串的方法:单引号.双引号.三引号.引号使用 ...
- shell字符串基本操作
shell脚本中一切变量皆字符串,所以必须掌握字符串的常用处理方法.比如获取字符串长度.获取字符串指定位置字符.替换字符串中的指定字符或者删除某些字符等操作. 1.字符串操作列表 (1)var=val ...
- js字符串基本操作
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtm ...
随机推荐
- python开发_tkinter_复选菜单
在之前的blog中有提到python的tkinter中的菜单操作 python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐 python开发_tkinter_窗口控件_自 ...
- Bootstrap_表格
Bootstrap 表格 Bootstrap 提供了一个清晰的创建表格的布局.下表列出了 Bootstrap 支持的一些表格元素: 标签 描述 <table> 为表格添加基础样式. < ...
- CentOS 6.9配置EPEL源
简介: EPEL是一个由特别兴趣小组创建.维护并管理的,针对 红帽企业版 Linux(RHEL)及其衍生发行版(比如 CentOS.Scientific Linux.Oracle Enterprise ...
- 探秘GO语言《比较C#与GO的性能》
这段时间也来学学GO语言,听说它的性能相当的棒棒,我就拿C#来和它做比对一下. 这里只是单纯了做了for循环的比对,看看谁的循环快 C# 代码: static void Main(string[] a ...
- 快速搭建简单的LBS程序——地图服务
很多时候,我们的程序需要提供需要搭建基于位置的服务(LBS),本文这里简单的介绍一下其涉及的一些基本知识. 墨卡托投影 地图本身是一个三维图像,但在电脑上展示时,往往需要将其转换为二维的平面图形,需要 ...
- Syncovery : Google Docs protocol completely replaced with Google Drive
Google Docs protocol completely replaced with Google Drive In May 2015, the older Google Docs API wa ...
- win7电脑遇到端口被占用的情况该如何查看并将其关闭
转载:http://www.jb51.net/os/windows/203315.html 端口是我们在进行远程或者打印机等都会遇到的,但是有很多用户会遇到端口被占用的情况,有很多人不知道该如何查看电 ...
- [Node.js]OS模块
摘要 Node.js有很多工具模块,比如os,path,net,dns,domain模块.这里先介绍os模块的使用方法.os模块提供了一些基本的系统操作函数. os模块 引入os模块 var os=r ...
- C#中结构(struct)的部分初始化和完全初始化
假设有这样一个值类型struct. public struct Size { public int Length; public int Width; public int Area() { retu ...
- Java String和Date的转换 Date类型操作
String—>Date String dateString = "2012-12-06 "; try { SimpleDateFormat sdf = new Simple ...