字符串的创建
类方法 +(id) stringWithString
eg: [NSString stringWithString: @"hello"];
类方法 +(id) stringWithFormat
eg: [NSString stringWithFormat: @"world"];
类方法 - (instancetype)initWithString:(NSString *)aString
eg: [[NSString alloc] initWithString:@"print"];
使用这个方法时,Xcode会提示建议更改成直接声明
直接声明
eg: NSString *s1 = @"hello world";
字符串长度:
length属性 eg: [字符串 length]
字符串合并
- (NSString *)stringByAppendingString:(NSString *)aString
eg: NSString *s3 = [s1 stringByAppendingString: s2];
字符串分割
依据指定字符串进行分割,返回NSArray
- (NSArray<NSString *> *)componentsSeparatedByString:(NSString *)separator
eg: NSArray *array1 = [@"everyone" componentsSeparatedByString: @"y"];
查找字符串
- substringFromIndex: 返回从index开始到字符串结尾的一个字符串
- substringWithRange: 根据NSRange返回一个NSString
- substringToIndex: 返回一个到anIndex结束的字符串,但不包含在anIndex处的字符
- (NSRange)rangeOfCharacterFromSet:(NSCharacterSet *)aSet
返回集合中第一个匹配字符的位置
- (NSRange)rangeOfString:(NSString *)aString
返回第一个匹配字符串的Range
替换字符串
- (NSString * _Nonnull)stringByReplacingOccurrencesOfString:(NSString * _Nonnull)target
withString:(NSString * _Nonnull)replacement
把一个字符串中的target部分替换为replacement
- (NSString * _Nonnull)stringByReplacingCharactersInRange:(NSRange)range
withString:(NSString * _Nonnull)replacement
把一个字符串中的某个Range中的字符串替换为replacement字符串
识别和比较字符串
- (NSComparisonResult)caseInsensitiveCompare:(NSString *)aString
忽略大小写的比较,返回一个NSComparisonResult类型的枚举
eg: BOOL result = [str1 caseInsensitiveCompare: str2] = = NSOrderedSame;
- (NSComparisonResult)compare:(NSString *)aString
大小写敏感的比较,返回一个NSComparisonResult类型的枚举
- (BOOL)isEqualToString:(NSString *)aString
大小写敏感的比较,返回一个BOOL值
eg: BOOL result = [@"hello" isEqualToString: @"Hello"];
-(BOOL)hasPrefix:(NSString*)aString;
-(BOOL)hasSuffix:(NSString *)aString;
是否已某个字符串开头(结尾)
改变大小写
@property(readonly, copy) NSString *capitalizedString
(属性)把NSString 中的每个单词的第一个字母转为大写
eg: NSString s1 = @"if else"; NSString s2 = s1.capitalizedString;
@property(readonly, copy) NSString *lowercaseString
@property(readonly, copy) NSString *uppercaseString
(属性)把NSString中的每个字符转为大写(小写)