`

NSScanner类参考

 
阅读更多
NSString *string = @"Product: Acme Potato Peeler; Cost: 0.98 73\nProduct: Chef Pierre Pasta Fork; Cost: 0.75 19\nProduct: Chef Pierre Colander; Cost: 1.27 2\n";
 
NSCharacterSet *semicolonSet;
NSScanner *theScanner;
 
NSString *PRODUCT = @"Product:";
NSString *COST = @"Cost:";
 
NSString *productName;
float productCost;
NSInteger productSold;
 
semicolonSet = [NSCharacterSet characterSetWithCharactersInString:@";"];
theScanner = [NSScanner scannerWithString:string];
 
while ([theScanner isAtEnd] == NO)
{
    if ([theScanner scanString:PRODUCT intoString:NULL] &&
        [theScanner scanUpToCharactersFromSet:semicolonSet
            intoString:&productName] &&
        [theScanner scanString:@";" intoString:NULL] &&
        [theScanner scanString:COST intoString:NULL] &&
        [theScanner scanFloat:&productCost] &&
        [theScanner scanInteger:&productSold])
    {
        NSLog(@"Sales of %@: $%1.2f", productName, productCost * productSold);
    }
}

 

 

 

 

 

Scans the string until a given string is encountered, accumulating characters into a string that’s returned by reference.

(从当前位置开始,根据指定的字符串扫描,直到找到指定的字符串停止(不不会指定的字符串),返回从当前位置开始到指定字符串之间的字符串,并赋值给(stringValue)这个参数)

- (BOOL)scanUpToString:(NSString *)stopString intoString:(NSString **)stringValue

 

 

Scans a given string, returning an equivalent string object by reference if a match is found.

(跳过指定的字符串) stringValue中的值和string 中的一样

- (BOOL)scanString:(NSString *)string intoString:(NSString **)stringValue

分享到:
评论

相关推荐

    MKDataScanner:NSScanner for NSData和文件

    ##特征NSScanner之类的界面。 扫描文件数据流以减少内存使用量。 ##安装可可豆pod 'MKDataScanner' ##用法扫描文件以查找字节顺序{0 ... 8} UInt8 bytes[] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x...

    iPhone开发常用类型的参考

    这份压缩包提供了关于iPhone开发中一些常用类型的参考资料,涵盖了苹果官方文档的关键信息。以下将详细阐述这些文件所涉及的知识点: 1. **RemoteNotificationsPG.pdf**:远程通知(Remote Notifications)是iOS...

    一个简单的Objective-C程序示例,它使用Foundation框架来读取用户输入的两个整数,并计算它们的和与乘积

    上述代码示例使用了Foundation框架的NSScanner类来读取标准输入流/dev/stdin中的整数。这通常用于命令行工具项目。 在实际应用中,Objective-C代码通常更为复杂,并且会包含更多的错误处理和用户界面交互。 ...

    IOS判断字符串是不是纯数字的方法总结

    NSScanner *scan = [NSScanner scannerWithString:string]; int val; return [scan scanInt:&val] && [scan isAtEnd]; } ``` 这段代码创建了一个`NSScanner`对象,并尝试扫描字符串中的第一个整数。如果扫描成功...

    IOS中如何将十六进制颜色的字符串转化为UIColor

    在iOS开发中,由于系统内置的UIColor类不直接支持十六进制颜色的表示,因此我们需要通过编程手段将常见的Web设计中的十六进制颜色代码(如#FF0000)转化为UIColor对象。这个过程通常涉及到颜色空间转换和颜色模型的...

    iOS 正则表达式详解

    本文将深入探讨iOS系统内置的正则表达式用法以及如何使用`NSScanner`类来辅助实现类似功能。 首先,我们来看如何创建一个正则表达式对象。在iOS中,我们可以使用`NSRegularExpression`类来构建正则表达式。例如,...

    iOS实现去除html标签的方法汇总

    我们在一些开发中,很有必要过滤掉用户输入的文本中的HTML标签以防范XSS攻击,本文将详细介绍关于iOS去除html标签的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 请求接口返回的...

    iOS中NSCharacterSet的使用详解 - siji1449590363的专栏 - 博客频道 - CSDN.NET1

    这个类在处理字符串、扫描器(NSScanner)和其他文本处理任务时非常有用,因为它能够快速有效地判断一个字符是否属于某个特定的字符集。在本文中,我们将深入探讨`NSCharacterSet`的使用方法及其在iOS开发中的应用。...

    iOSDocumentFileBrowser:浏览文档文件文件夹中的文件,按后缀名称分类文件,并根据文件名预览文件内容框架

    iOS应用通常需要通过`FileManager`类来访问设备上的文件系统。`iOSDocumentFileBrowser`会遍历指定路径下的所有文件,获取文件的基本信息,如文件名、大小、创建日期等。 2. **文件分类**: 根据文件的后缀名对...

    iOS开发验证判断语句之正则表达式小结

    使用NSScanner类进行字符串扫描是一种简单直接的方法。通过scanInt:方法尝试将字符串转换为整数,并且检查是否到达字符串末尾,从而判断字符串是否完全由整数组成。 浮点数验证与整数验证类似,但使用scanFloat:...

    SwiftExP:纯Swift 2.0 S表达式解析器

    这意味着:既不是NSScanner ,也不是NSRegularExpression ,也不是NSCharacterSet ,甚至不是NSString 。 是Lisp语言所基于的嵌套列表数据的一种表示法格式。 建筑/范式注意事项 尽管S表达式具有非常简单的基本...

    objc代码-两数相加。

    例如,你可以使用`NSInputStream`读取标准输入,或者使用`NSScanner`扫描用户输入的数字。 `README.txt`文件通常是项目或代码的简短说明,可能包含如何运行程序、项目目标等信息。在这个案例中,由于题目只给出了...

    ios-简易计算器.zip

    - 使用`NSScanner`或自定义的解析算法,遍历输入字符串,区分操作数和运算符。 - 创建一个栈数据结构来处理括号和运算符的优先级,遵循后进先出(LIFO)原则。 **添加小数支持**: - 将所有涉及数字的变量声明为`...

    iOS常用小功能(获得屏幕图像、压缩图片、加边框、调整label的size)

    提供的代码片段没有完整展示,但基本思路是使用`NSScanner`扫描十六进制字符串,然后转换为颜色的红色、绿色和蓝色分量。 ```swift func color(fromHexRGB hexColor: String) -> UIColor? { var red: CGFloat = ...

Global site tag (gtag.js) - Google Analytics