NSScanner类参考

概述

NSScanner类是从一个抽象超类集群,它可以扫描值声明为对象的编程接口NSString对象。

一个NSScanner对象解释并转换成一个字符NSString值的对象为数量和字符串。 你指派它的扫描仪创建的字符串,并通过扫描仪的字符串的字符的进展,从开始到结束,你要求的项目。

由于集群阶级性质,扫描仪的对象不是实际情况的NSScanner子一类,但其私人。 虽然扫描仪对象的类是私有的,它的接口是公共的,因为,这种抽象宣布超NSScanner  原始的方法对NSScannerstring ,根据上市的所有方法“配置扫描器” “一节中的方法”的任务。 您创建的对象使用这个类被称为扫描对象(当没有将导致混乱,因为扫描仪只)。

您可以设置一个NSScanner对象忽略一个字符集,因为它扫描字符串使用setCharactersToBeSkipped:方法。 跳过的字符集默认是空格和换行符的字符集。

要检索的字符串未扫描的余下部分,使用[[scanner string] substringFromIndex: [scanner scanLocation]]

类方法

localizedScannerWithString:

返回NSScanner对象,扫描一个给定的字符串根据用户的默认语言环境。

+(ID)的localizedScannerWithString:( 的NSString *)aString
参数
aString

该字符串进行扫描。

返回值

一个NSScanner扫描aString对象,根据用户的默认语言环境。

讨论

设置字符串扫描调用initWithString:aString。 语言环境设置setLocale:

可用性
  • 在Mac OS现有的X 10.0和更高版本。
宣布
NSScanner.h

scannerWithString:

返回NSScanner对象,扫描给定的字符串。

+(ID)的scannerWithString:( 的NSString *)aString
参数
aString

该字符串进行扫描。

返回值

一个NSScanner对象扫描aString。

讨论

设置字符串扫描调用initWithString:aString。

实例方法

区分大小写

返回一个布尔值,指示是否接收器中的字符区分它扫描的情况。

- (布尔)区分大小写

返回值

YES ,如果接收器的区别,否则,案中的字符它扫描, NO 

讨论

扫描仪默认情况下不区分大小写。 请注意,大小写不适用的字符被跳过。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

charactersToBeSkipped

返回字符集包含的字符的接收器忽略元素时,寻找一个可扫描。

- ( NSCharacterSet *)charactersToBeSkipped

返回值

字符集包含的字符的接收器忽略元素时,寻找一个可扫描。

讨论

例如,如果一个扫描器的空间和你忽略它发送一个scanInt:消息时,它会跳过空格,直到找到一个十进制数字或其他字符。 当一个元素被扫描,但是,没有字符被跳过。 如果您扫描是什么东西令中的字符设置为跳过(例如,使用scanInt:字符集时要跳过是小数位数),其结果是不确定的。

设置默认为跳过空格和换行符的字符集。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

initWithString:

返回NSScanner对象初始化扫描一个给定的字符串。

- (身份证)initWithString:( 的NSString *)aString

参数

aString

该字符串进行扫描。

返回值

一个NSScanner对象初始化扫描开始aString从。 返回的对象可能比原来的接收器不同。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

isAtEnd

返回一个布尔值,指示是否接收器已用尽所有重要人物

- (布尔)isAtEnd

返回值

YES ,如果接收器已经用尽了所有重大的字符串字符,否则NO 

如果将字符集只跳过依然存在,返回YES 

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

关联的例子代码

宣布

NSScanner.h

语言环境

返回接收器的语言环境。

- (ID)的语言环境

返回值

接收器的语言环境,或nil ,如果没有。

讨论

扫描器的语言环境影响的方式解释从字符串的数值。 特别是,扫描仪使用的语言环境的小数分隔符来区分整数和浮点表示小数部分。 一个没有语言环境设置扫描仪使用非本地化的值。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

scanCharactersFromSet:intoString:

扫描一样从一个特定的字符集字符的长字符串遇到,积累成一个的引用返回的字符串的字符。

- (布尔)scanCharactersFromSet:( NSCharacterSet *)scanSet intoString:( 的NSString **)StringValue的

参数

scanSet

的字符集扫描。

StringValue的

返回时,包含字符扫描。

返回值

YES ,如果接收扫描的任何字符,否则NO 

讨论

调用此方法NULL作为StringValue的过去简单地扫描一个给定的字符集。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

scanDecimal:

一扫描NSDecimal值,返回找到一个参照值。

- (布尔)scanDecimal:( NSDecimal *)decimalValue

参数

decimalValue

返回时,包含扫描的价值。 NSDecimalNumber信息类规范更多NSDecimal值。

返回值

YES ,如果找到一个有效的接收器NSDecimal代表,否则NO 

讨论

调用此方法NULL作为decimalValue简单地扫描过去一NSDecimal代表性。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

关联的例子代码

宣布

NSDecimalNumber.h

scanDouble:

一个double值扫描,发现返回参考价值。

- (布尔)scanDouble:(双*)doubleValue

参数

doubleValue

返回时,包含扫描的价值。 包含 HUGE_VAL 或 –HUGE_VAL 溢出,或0.0上溢。

返回值

YES ,如果找到一个有效的接收器的浮点表示,否则NO 

讨论

跳过过去在溢出的情况下过剩数字,因此扫描仪的立场是过去的整个浮点表示。

调用此方法NULL作为doubleValue简单地扫描过去的双值表示。 浮点数表示被假定为符合IEEE。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

scanFloat:

一个浮动值扫描,发现返回参考价值。

- (布尔)scanFloat:(浮动*)floatValue

参数

floatValue

返回时,包含扫描的价值。 包含 HUGE_VAL 或 –HUGE_VAL 溢出,或0.0上溢。

返回值

YES ,如果找到一个有效的接收器的浮点表示,否则NO 

讨论

跳过过去在溢出的情况下过剩数字,因此扫描仪的立场是过去的整个浮点表示。

调用此方法NULL作为floatValue过去简单地扫描一个float值表示。 浮点数表示被假定为符合IEEE。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

关联的例子代码

宣布

NSScanner.h

scanHexDouble:

为从十六进制表示的double值扫描,发现返回参考价值。

- (布尔)scanHexDouble:(双*)的结果

参数

结果

返回时,包含扫描的价值。

返回值

YES ,如果找到一个有效的接收器双点的代表性,否则NO 

讨论

这相当于%a%A格式。 十六进制双重代表之前,必须0x0X 

调用此方法NULL作为结果简单地扫描过去的十六进制双重代表。

可用性

  • 可在Mac OS X v10.5及更高版本。

宣布

NSScanner.h

scanHexFloat:

为从十六进制表示的double值扫描,发现返回参考价值。

- (布尔)scanHexFloat:(浮动*)的结果

参数

结果

返回时,包含扫描的价值。

返回值

YES ,如果找到一个有效的接收器浮点数表示,否则NO 

讨论

这相当于%a%A格式。 十六进制浮点表示前面必须0x0X 

调用此方法NULL作为结果简单地扫描过去的十六进制浮点表示。

可用性

  • 可在Mac OS X v10.5及更高版本。

宣布

NSScanner.h

scanHexInt:

为从一个十六进制表示的无符号值扫描,发现返回参考价值。

- (布尔)scanHexInt:(无符号*)intValue

参数

intValue

返回时,包含扫描的价值。 包含 INT_MAX 或 INT_MIN 溢出。

返回值

返回YES ,如果接收器发现一个有效的十六进制整数表示,否则NO 

讨论

十六进制整数表示可以选择的前面0x0X  跳过过去在溢出的情况下过剩的数字,所以接收机的位置是过去的整个十六进制表示。

调用此方法NULL作为intValue简单地扫描过去的十六进制整数表示。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

宣布

NSScanner.h

scanHexLongLong:

为从十六进制表示的double值扫描,发现返回参考价值。

- (布尔)scanHexLongLong:(无符号长的长*)的结果

参数

结果

返回时,包含扫描的价值。

返回值

YES ,如果找到一个有效的接收器双点的代表性,否则NO 

讨论

调用此方法NULL作为结果简单地扫描过去的很长很长的十六进制表示形式。

可用性

  • 可在Mac OS X v10.5及更高版本。

宣布

NSScanner.h

scanInt:

为从一个十进制表示的int值扫描,发现返回参考价值。

- (布尔)scanInt:(智力*)intValue

参数

intValue

返回时,包含扫描的价值。 包含 INT_MAX 或 INT_MIN 溢出。

返回值

YES ,如果接收器发现一个有效的小数的整数表示,否则NO 

讨论

跳过过去在溢出的情况下过剩的数字,所以接收机的位置是过去的整个十进制表示。

调用此方法NULL作为intValue过去简单地扫描一个十进制整数表示。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

scanInteger:

扫描一 NSInteger 值从十进制表示,他返回找到的参考价值

- (布尔)scanInteger:( NSInteger *) 

参数

返回时,包含扫描的价值。

返回值

YES ,如果接收器发现一个有效的整数表示,否则NO 

讨论

跳过过去在溢出的情况下过剩的数字,所以接收机的位置是过去整个的整数表示。

调用此方法NULL简单地扫描过去一个十进制整数表示。

可用性

  • 可在Mac OS X v10.5及更高版本。

参见

宣布

NSScanner.h

scanLocation

返回字符位置,接收器将开始其下一次扫描操作。

- ( NSUInteger )scanLocation

返回值

字符位置上,接收器将开始其下一次扫描操作。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

scanLongLong:

从一个相当长的十进制表示的long值扫描,发现返回参考价值。

- (布尔)scanLongLong:(长*长)longLongValue

参数

longLongValue

返回时,包含扫描的价值。 包含 LLONG_MAX 或 LLONG_MIN 溢出。

返回值

YES ,如果接收器发现一个有效的小数的整数表示,否则NO 

讨论

所有溢出位被跳过。 跳过过去在溢出的情况下过剩的数字,所以接收机的位置是过去的整个十进制表示。

调用此方法NULL作为longLongValue简单地扫描过去很长的十进制整数表示。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

宣布

NSScanner.h

scanString:intoString:

扫描一个给定的字符串,返回按引用的等效字符串对象,如果找到一个匹配。

- (布尔)scanString:( 的NSString *) 字符串 intoString:( 的NSString **)StringValue的

参数

该字符串来扫描当前扫描的位置。

StringValue的

返回时,如果接收到的位置的字符串包含一个等效的字符串在当前扫描,包含一个字符串相当于字符串 

返回值

YES ,如果StringValue的扫描位置相匹配的字符时,否则NO 

讨论

如果 string是存在于当前扫描的位置,那么当前的位置是先进的扫描后的字符串,否则扫描的位置不改变。

调用此方法NULL作为StringValue的过去简单地扫描一个给定的字符串。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

scanUpToCharactersFromSet:intoString:

扫描,直到从一个给定字符串的字符集遇到,积累成一个的通过引用返回字符串的字符。

- (布尔)scanUpToCharactersFromSet:( NSCharacterSet *)stopSet intoString:( 的NSString **)StringValue的

参数

stopSet

最多的字符设置来扫描。

StringValue的

返回时,包含字符扫描。

返回值

YES ,如果接收扫描的任何字符,否则NO 

如果仅在扫描字符charactersToBeSkipped字符集(这是空白和换行符默认设置),然后返回NO 

讨论

调用此方法NULL作为StringValue的简单扫描到一个给定的字符集。

如果没有字符的字符串stopSet目前在扫描仪的来源,字符串的其余部分的来源是StringValue的投入,接收机的scanLocation前进到字符串结束的来源,并且该方法返回YES 

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

scanUpToString:intoString:

扫描字符串,直到遇到一个给定的字符串,积累成一个的引用返回的字符串的字符。

- (布尔)scanUpToString:( 的NSString *)stopString intoString:( 的NSString **)StringValue的

参数

stopString

该字符串扫描到。

StringValue的

返回时,包含任何字符被扫描。

返回值

YES ,如果接收器扫描任何字符,否则NO 

如果仅在扫描字符charactersToBeSkipped字符集(默认是空格和换行字符集),则此方法返回NO 

讨论

如果stopString是存在于接收,位置,然后在返回的扫描设置为字符串开头的。

如果stopString接收器是第一个字符串中,然后该方法将返回NOStringValue的是没有改变。

如果搜索字符串( stopString )不是字符串中扫描仪的来源,字符串的其余部分的来源是StringValue的投入,接收机的scanLocation前进到字符串结束的来源,并且该方法返回YES 

调用此方法NULL作为StringValue的简单扫描到一个给定的字符串。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

setCaseSensitive:

设置是否接收器是大小写敏感,扫描字符。

- (空)setCaseSensitive:(布尔) 标记

参数

国旗

如果YES ,接收器将区分情况时,扫描字符,否则会忽略大小写的区别。

讨论

扫描仪默认情况下不区分大小写。 请注意,大小写不适用的字符被跳过。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

setCharactersToBeSkipped

设置的字符集时忽略扫描的值表示。

- (空)setCharactersToBeSkipped:( NSCharacterSet *)skipSet

参数

skipSet

时忽略的字符表示一个值扫描。 nil不忽视任何字符。

讨论

例如,如果一个扫描器的空间和你忽略它发送一个scanInt:消息时,它会跳过空格,直到找到一个十进制数字或其他字符。 当一个元素被扫描,但是,没有字符被跳过。 如果您扫描是什么东西令中的字符设置为跳过(例如,使用scanInt:字符集时要跳过是小数位数),其结果是不确定的。

要跳过的字符被视为直译为单个值。 扫描器并不适用于它的大小写设置这些字符,不尝试匹配的字符可以套任何字符序列组成跳过(尽管它比赛前,单独组成的字符)。 如果你想跳过所有的元音,而扫描字符串,例如,可以设置要跳过的字符在字符串“AEIOUaeiou”这些(加上任何预先重音字符组成的变体)。

跳过的字符集默认是空格和换行符的字符集。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

关联的例子代码

宣布

NSScanner.h

那么setlocale:

设置接收机的区域设置特定的语言环境。

- (空)那么setlocale:(编号)aLocale

参数

aLocale

为接收器的语言环境。

讨论

扫描器的语言环境影响的方式解释该字符串值。 特别是,扫描仪使用的语言环境的小数分隔符来区分整数和浮点表示小数部分。 一个新的扫描器的语言环境是默认nil ,这导致它使用非本地化的值。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

setScanLocation:

设置位置的下一次扫描操作将开始一个给定的索引。

- (空)setScanLocation:( NSUInteger ) 指数

参数

指数

该位置的下一次扫描操作将开始。 提出了一个NSRangeException如果指数为超出字符串结束扫描。

讨论

这种方法是备份到错误后重新扫描有用。

而不是设置扫描位置直接跳过已知序列的字符,使用scanString:intoString:scanCharactersFromSet:intoString:允许您验证预期的子(或字符集),目前是事实。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

返回与该接收器的创建或初始化字符串。

- ( 的NSString *)字符串

返回值

与该接收器的创建或初始化字符串。

可用性

  • 在Mac OS现有的X 10.0和更高版本。

参见

宣布

NSScanner.h

 

原文地址:http://blog.sina.com.cn/s/blog_4adf31ea0100o2gx.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值