字符串提取数字
2017-01-11 10:29
639 查看
OC 提供了很方便的API NSScanner
// On overflow, the below methods will return success and clamp
- (BOOL)scanInt:(nullable
int *)result;
- (BOOL)scanInteger:(nullable
NSInteger *)result
NS_AVAILABLE(10_5, 2_0);
- (BOOL)scanLongLong:(nullable
long long *)result;
- (BOOL)scanUnsignedLongLong:(nullable
unsigned long
long *)result NS_AVAILABLE(10_9, 7_0);
- (BOOL)scanFloat:(nullable
float *)result;
- (BOOL)scanDouble:(nullable
double *)result;
- (BOOL)scanHexInt:(nullable
unsigned *)result;
// Optionally prefixed with "0x" or "0X"
- (BOOL)scanHexLongLong:(nullable
unsigned long
long *)result NS_AVAILABLE(10_5, 2_0);
// Optionally prefixed with "0x" or "0X"
- (BOOL)scanHexFloat:(nullable
float *)result
NS_AVAILABLE(10_5, 2_0);
// Corresponding to %a or %A formatting. Requires "0x" or "0X" prefix.
- (BOOL)scanHexDouble:(nullable
double *)result
NS_AVAILABLE(10_5, 2_0);
// Corresponding to %a or %A formatting. Requires "0x" or "0X" prefix.
- (BOOL)scanString:(NSString *)string intoString:(NSString *
_Nullable * _Nullable)result;
- (BOOL)scanCharactersFromSet:(NSCharacterSet *)set intoString:(NSString
* _Nullable * _Nullable)result;
- (BOOL)scanUpToString:(NSString *)string intoString:(NSString *
_Nullable * _Nullable)result;
- (BOOL)scanUpToCharactersFromSet:(NSCharacterSet *)set intoString:(NSString
* _Nullable * _Nullable)result;
第一种方法:
NSScanner * scanner = [[NSScanner
alloc]initWithString:string];
int n;
[scanner scanInt:&n];
NSLog(@"--%d",n);
第二种
NSCharacterSet * cset = [[NSCharacterSet
decimalDigitCharacterSet]invertedSet];
int num =[[string
stringByTrimmingCharactersInSet:cset]
intValue];
NSLog(@"num = %d", num);
// On overflow, the below methods will return success and clamp
- (BOOL)scanInt:(nullable
int *)result;
- (BOOL)scanInteger:(nullable
NSInteger *)result
NS_AVAILABLE(10_5, 2_0);
- (BOOL)scanLongLong:(nullable
long long *)result;
- (BOOL)scanUnsignedLongLong:(nullable
unsigned long
long *)result NS_AVAILABLE(10_9, 7_0);
- (BOOL)scanFloat:(nullable
float *)result;
- (BOOL)scanDouble:(nullable
double *)result;
- (BOOL)scanHexInt:(nullable
unsigned *)result;
// Optionally prefixed with "0x" or "0X"
- (BOOL)scanHexLongLong:(nullable
unsigned long
long *)result NS_AVAILABLE(10_5, 2_0);
// Optionally prefixed with "0x" or "0X"
- (BOOL)scanHexFloat:(nullable
float *)result
NS_AVAILABLE(10_5, 2_0);
// Corresponding to %a or %A formatting. Requires "0x" or "0X" prefix.
- (BOOL)scanHexDouble:(nullable
double *)result
NS_AVAILABLE(10_5, 2_0);
// Corresponding to %a or %A formatting. Requires "0x" or "0X" prefix.
- (BOOL)scanString:(NSString *)string intoString:(NSString *
_Nullable * _Nullable)result;
- (BOOL)scanCharactersFromSet:(NSCharacterSet *)set intoString:(NSString
* _Nullable * _Nullable)result;
- (BOOL)scanUpToString:(NSString *)string intoString:(NSString *
_Nullable * _Nullable)result;
- (BOOL)scanUpToCharactersFromSet:(NSCharacterSet *)set intoString:(NSString
* _Nullable * _Nullable)result;
第一种方法:
NSScanner * scanner = [[NSScanner
alloc]initWithString:string];
int n;
[scanner scanInt:&n];
NSLog(@"--%d",n);
第二种
NSCharacterSet * cset = [[NSCharacterSet
decimalDigitCharacterSet]invertedSet];
int num =[[string
stringByTrimmingCharactersInSet:cset]
intValue];
NSLog(@"num = %d", num);
相关文章推荐
- SQL Server 提取数字、提取英文、提取中文的sql语句
- 正则表达式提取数字
- iOS开发_从一个带有空格和特殊符号的字符串里提取数字即手机号的方法
- 在Scanner中使用字符分割符
- 从字符串中提取数字 java
- 菜单权限处理
- 碰到一个mysql date_format函数的问题,是用法不当还是bug?
- 安装mysql报错问题处理
- 《Linux内核设计与实现》读书笔记(三)- Linux的进程
- 服务端不listen 客户端也能链接成功
- Play FrameWork 要点
- ORA-01000: 超出打开游标的最大数 问题的分析和解决
- Asssert常用方法
- 切换svn登录用户名和密码
- 论文阅读(三)
- linker command failed with exit code 1 (use -v to see invocation)
- test
- 排序之 --- 快速排序
- [置顶] spring-mvc的初步认识
- 用eclipse导出webserver客户端代码