OC 学习笔记 - NSString NSMutableString

文章目录

  • NSString
    • 通过文件初始化字符串
    • 通过URL初始化字符串(获取网页源代码)
    • 初始化空字符串
    • 通过已有字符串初始化字符串
    • 获取字符串的长度
    • 获取特定位置字符的ASCII值
    • 截取字符串
    • 判断字符串以指定内容开始
    • 判断字符串以指定内容结束
    • 判断字符串内容是否相同
    • 将字符串中的字母以小写的形式输出
    • 将字符串中的字母以大写的形式输出
    • 返回字符串特定类型的数据
    • 查找字符串
    • 替换字符串
    • 拆分字符串
  • NSMutableString
    • 初始化特定空间的空字符串
    • 设置字符串
    • 尾部追加字符串
    • 删除指定范围内字符
    • 在指定位置插入字符
    • 常用占位符

NSString

通过文件初始化字符串

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"str" ofType:@"txt"];
NSError *error;
NSString *fileStr = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:&error];

通过URL初始化字符串(获取网页源代码)

NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
NSError *error;
NSString *urlStr = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:&error];

初始化空字符串

NSString *str = [NSString string];

通过已有字符串初始化字符串

NSString *str1 = @"字符串1";
NSString *str2 = [NSString stringWithString:str1];

获取字符串的长度

NSString *str = @"字符串1";
NSLog(@"%lu",str.length);

获取特定位置字符的ASCII值

NSString *str = @"abcd";
NSLog(@"%hu",[str characterAtIndex:2]);

截取字符串

//从指定位置开始截取字符串
NSString *str = @"abcd";
NSLog(@"%@",[str substringFromIndex:1]);

//从指定位置截取指定数目的字符串
NSString *str = @"abcd";
NSLog(@"%@",[str substringWithRange:NSMakeRange(1, 2)]);

//从开始位置截取到指定位置(不包含边界)
NSString *str = @"abcd";
NSLog(@"%@",[str substringToIndex:2]);

判断字符串以指定内容开始

NSString *str = @"abcd";
NSLog(@"%d",[str hasPrefix:@"abc"]);

判断字符串以指定内容结束

NSString *str = @"abcd";
NSLog(@"%d",[str hasSuffix:@"bcd"]);

判断字符串内容是否相同

NSString *str = @"abcd";
NSLog(@"%d",[str isEqualToString:@"abco"]);

将字符串中的字母以小写的形式输出

NSString *str = @"ABCD";
NSLog(@"%@",[str lowercaseString]);

将字符串中的字母以大写的形式输出

NSString *str = @"abcd";
NSLog(@"%@",[str uppercaseString]);

返回字符串特定类型的数据

NSString *str = @"0";
double dStr = [str doubleValue];
float fStr = [str floatValue];
int iStr = [str intValue];
NSInteger nStr = [str integerValue];
BOOL bStr = [str boolValue];

查找字符串

	NSString *str = @"abcd";
	NSRange range = [str rangeOfString:@"ab"];
	NSLog(@"%@",NSStringFromRange(range));

	//NSCaseInsensitiveSearch  不区分字母大小写
	//NSLiteralSearch    对字符串进行字节单位的比较,一般可提高检索速度
	//NSBackwardsSearch  从范围的末尾开始检索
	//NSAnchoredSearch    仅检索制定范围的前部。忽略字符串中间的检索字符
    NSString *str = @"AbcD";
    NSRange range = [str rangeOfString:@"ab" options:NSCaseInsensitiveSearch];
    if(range.location != NSNotFound){
         NSLog(@"%@",NSStringFromRange(range));
    }

替换字符串

    NSString *str = @"AbcD";
    NSString *newString  = [str stringByReplacingOccurrencesOfString:@"A" withString:@"y"];

拆分字符串

NSString *string = @"A|B|C|D";
NSArray *array = [string componentsSeparatedByString:@"|"];

NSMutableString

初始化特定空间的空字符串

NSMutableString *mStr = [NSMutableString stringWithCapacity:4];

设置字符串

NSMutableString *mStr = [NSMutableString stringWithCapacity:4];
[mStr setString:@"abcdef"];
NSLog(@"%@",mStr);

尾部追加字符串

NSMutableString *mStr = [NSMutableString stringWithCapacity:4];
[mStr appendString:@"abcdef"];
NSLog(@"%@",mStr);

删除指定范围内字符

NSMutableString *mStr = [NSMutableString stringWithCapacity:4];
[mStr appendString:@"abcdef"];
[mStr deleteCharactersInRange:NSMakeRange(1,2)];
NSLog(@"%@",mStr);

在指定位置插入字符

NSMutableString *mStr = [NSMutableString stringWithCapacity:4];
[mStr appendString:@"abcdef"];
[mStr insertString:@"hij" atIndex:2];
NSLog(@"%@",mStr);

常用占位符

%@ NSString实例
%d,%D,%i 整数
%4d,%4D,%4i 格式化整数
%ld,%lD,%li 长整数
%u,%U 无符号整数
%x 将无符号整数以十六进制小写字母显示
%X 将无符号整数以十六进制大写字母显示
%f 小数
%c 字符
%s C语言字符串
%% 显示%字符本身

你可能感兴趣的:(Objective-c)