ios开发之NSCharacterSet

本文详细介绍了iOS开发中NSCharacterSet的使用,包括如何获取各种预定义字符集,如控制字符、空白字符、数字、大小写字母等,并探讨了如何通过区间、字符串或位图创建自定义字符集。此外,还讨论了NSMutableCharacterSet的相关操作,如添加、删除字符、求并集、交集等,帮助开发者更好地进行字符串处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

NSCharacterSet

@property (readonly, class, copy) NSCharacterSet *controlCharacterSet;

返回控制字符集

@property (readonly, class, copy) NSCharacterSet *whitespaceCharacterSet;

返回空白字符集

@property (readonly, class, copy) NSCharacterSet *whitespaceAndNewlineCharacterSet;

返回空白字符和换行符字符集

@property (readonly, class, copy) NSCharacterSet *decimalDigitCharacterSet;

返回数字字符集

@property (readonly, class, copy) NSCharacterSet *letterCharacterSet;

返回小写字符集

@property (readonly, class, copy) NSCharacterSet *lowercaseLetterCharacterSet;

返回大写字符集

@property (readonly, class, copy) NSCharacterSet *nonBaseCharacterSet;

返回非基字符集

@property (readonly, class, copy) NSCharacterSet *alphanumericCharacterSet;

返回字母数字字符集

@property (readonly, class, copy) NSCharacterSet *decomposableCharacterSet;

返回可分解的字符集

@property (readonly, class, copy) NSCharacterSet *illegalCharacterSet;

返回非法字符集

@property (readonly, class, copy) NSCharacterSet *punctuationCharacterSet;

返回标点字符集

@property (readonly, class, copy) NSCharacterSet *capitalizedLetterCharacterSet;

返回大写字母字符集

@property (readonly, class, copy) NSCharacterSet *symbolCharacterSet;

返回符号字符集

@property (readonly, class, copy) NSCharacterSet *newlineCharacterSet

返回换行符的字符集

 + (NSCharacterSet *)characterSetWithRange:(NSRange)aRange;

根据区间构建对象

+ (NSCharacterSet *)characterSetWithCharactersInString:(NSString *)aString;

根据字符串构建对象

+ (NSCharacterSet *)characterSetWithBitmapRepresentation:(NSData *)data;

根据位图构建对象

+ (nullable NSCharacterSet *)characterSetWithContentsOfFile:(NSString *)fName;

根据文件内容构建对象(文件内容为位图)

- (BOOL)characterIsMember:(unichar)aCharacter;

是否包含字符

@property (readonly, copy) NSData *bitmapRepresentation;

返回位图

@property (readonly, copy) NSCharacterSet *invertedSet;

倒置字符集,返回除了自身包含的字符的字符集

- (BOOL)longCharacterIsMember:(UTF32Char)theLongChar;

是否包含UTF32Char字符

- (BOOL)isSupersetOfSet:(NSCharacterSet *)theOtherSet;

是否是字符集的超集

- (BOOL)hasMemberInPlane:(uint8_t)thePlane;

是否在平面

NSMutableCharacterSet

- (void)addCharactersInRange:(NSRange)aRange;

添加区间

- (void)removeCharactersInRange:(NSRange)aRange;

删除区间

- (void)addCharactersInString:(NSString *)aString;

添加字符串

- (void)removeCharactersInString:(NSString *)aString;

删除字符串

- (void)formUnionWithCharacterSet:(NSCharacterSet *)otherSet;

并集

- (void)formIntersectionWithCharacterSet:(NSCharacterSet *)otherSet;

交集

- (void)invert;

翻转

 + (NSMutableCharacterSet *)controlCharacterSet;
 + (NSMutableCharacterSet *)whitespaceCharacterSet;
 + (NSMutableCharacterSet *)whitespaceAndNewlineCharacterSet;
 + (NSMutableCharacterSet *)decimalDigitCharacterSet;
 + (NSMutableCharacterSet *)letterCharacterSet;
 + (NSMutableCharacterSet *)lowercaseLetterCharacterSet;
 + (NSMutableCharacterSet *)uppercaseLetterCharacterSet;
 + (NSMutableCharacterSet *)nonBaseCharacterSet;
 + (NSMutableCharacterSet *)alphanumericCharacterSet;
 + (NSMutableCharacterSet *)decomposableCharacterSet;
 + (NSMutableCharacterSet *)illegalCharacterSet;
 + (NSMutableCharacterSet *)punctuationCharacterSet;
 + (NSMutableCharacterSet *)capitalizedLetterCharacterSet;
 + (NSMutableCharacterSet *)symbolCharacterSet;
 + (NSMutableCharacterSet *)newlineCharacterSet NS_AVAILABLE(10_5, 2_0);

与上面相同

+ (NSMutableCharacterSet *)characterSetWithRange:(NSRange)aRange;
+ (NSMutableCharacterSet *)characterSetWithCharactersInString:(NSString *)aString;
+ (NSMutableCharacterSet *)characterSetWithBitmapRepresentation:(NSData *)data;
+ (nullable NSMutableCharacterSet *)characterSetWithContentsOfFile:(NSString *)fName;

与上面相同

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值