NSString

2019-01-18  本文已影响0人  xbcoding

1、字符串截取

// 截取从from开始(包括from位置的字符)到尾部
- (NSString *)substringFromIndex:(NSUInteger)from;

// 从0下标开始截取到位置to,但不包括to位置的字符
- (NSString *)substringToIndex:(NSUInteger)to;

// 截取指定范围(range)的字符串
- (NSString *)substringWithRange:(NSRange)range;

// 截取字符串指定范围的字符
- (void)getCharacters:(unichar *)buffer range:(NSRange)range;

2、字符串操作

// 去除首尾
- (NSString *)stringByTrimmingCharactersInSet:(NSCharacterSet *)set;

// 用replacement替换target
- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement;

// 将一个字符串分隔成多个字符串
- (NSArray *)componentsSeparatedByString:(NSString *)separator;

3、字符串搜索

// 是否以aString开头
- (BOOL)hasPrefix:(NSString *)aString;

// 是否以aString结尾
- (BOOL)hasSuffix:(NSString *)aString;

// 用来检查字符串内容中是否包含了aString
// 如果包含, 就返回aString的范围
// 如果不包含, NSRange的location为NSNotFound, length为0
- (NSRange)rangeOfString:(NSString *)aString;

// 是否包含字符串
- (BOOL)containsString:(NSString *)str;

4、字符串的比较

// 全部字符转为大写字母
- (NSString *)uppercaseString;

// 全部字符转为小写字母
- (NSString *)lowercaseString

// 首字母变大写,其他字母都变小写
- (NSString *)capitalizedString

// 两个字符串的内容相同就返回YES,否则返回NO
- (BOOL)isEqualToString:(NSString *)aString;

// 这个方法可以用来比较两个字符串内容的大小
// 比较方法: 逐个字符地进行比较ASCII值,返回NSComparisonResult作为比较结果
// NSComparisonResult是一个枚举,有3个值:
// 如果左侧 > 右侧,返回NSOrderedDescending,
// 如果左侧 < 右侧,返回NSOrderedAscending,
// 如果左侧 == 右侧返回NSOrderedSame
- (NSComparisonResult)compare:(NSString *)string;

// 忽略大小写进行比较,返回值与compare:一致
- (NSComparisonResult) caseInsensitiveCompare:(NSString *)string;

5、字符串的读写

NSError *error = nil; // 用来保存错误信息
// 读取文件内容
NSString *str = [NSString stringWithContentsOfFile:@"/Users/LJH/Desktop/Lion.txt" encoding:NSUTF8StringEncoding error:&error];

// writeToFile 写入
NSString *str = @"雪莲小姐姐";
BOOL flag = [str writeToFile:@"/Users/migu/Desktop/雪莲小姐姐.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];

6、字符串与路径

// 是否为绝对路径,其实就是判断是否以/开头
//  @"/Users/migu/Desktop/雪莲小姐姐.txt";  // 是绝对路径
//  @"Users/migu/Desktop/雪莲小姐姐.txt";  // 不是绝对路径
- (BOOL)isAbsolutePath;
  
// 获得最后一个目录,即截取最后一个/后面的内容
- (NSString *)lastPathComponent;

// 删除最后一个目录,即删除最后一个/和之后的内容
//  @"/Users/migu/Desktop/雪莲小姐姐.txt";  // 删除前
//  @"Users/migu/Desktop";  // 删除后
- (NSString *)stringByDeletingLastPathComponent;

// 在路径(会判断路径的后面有没有/,有就不添加, 没有就添加, 如果有多个/,会替换为1个)的后面拼接一个目录,即在最后面加上/和要拼接得内容
- (NSString *)stringByAppendingPathComponent:(NSString *)str;

// 获得拓展名,即从最后面开始截取.之后的内容
// @"/Users/migu/Desktop/雪莲小姐姐.txt";  // 扩展名为 txt
- (NSString *)pathExtension;

// 删除尾部的拓展名,即删除从最后面开始.之后的内容
// @"/Users/migu/Desktop/雪莲小姐姐.txt";  // @"/Users/migu/Desktop/雪莲小姐姐
- (NSString *)stringByDeletingPathExtension;

// 在尾部添加一个拓展名,即在最后面拼接上.和指定的内容
- (NSString *)stringByAppendingPathExtension:(NSString *)str;

参考文章
iOS中字符串的用法,看这里就够了(详细)

上一篇下一篇

猜你喜欢

热点阅读