Objective-C中字符串(NSString和NSMutableString)常用的方法

来源:互联网 发布:同花顺mac版 编辑:程序博客网 时间:2024/05/16 11:27

Objective-C中字符串(NSString和NSMutableString)常用的方法

标签(空格分隔): 字符串常用方法


一、NSString的常用方法(不可变字符串)

1、字符串实例化

1)直接赋值

NSString *value = @"lanou";NSString *all = @"lanou3g is very important!";

2)通过initWithFormat:

NSString *value_3 = [[NSString alloc] initWithFormat:@"%d %c",2,'t'];

便利构造器

NSString *string = [NSString stringWithFormat:@"%d %c",2,'t'];

2、获取字符串长度

@property (readonly) NSUInteger length;

NSLog(@"length = %ld",[all length];

3、获取字符串中字符

- (unichar)characterAtIndex:(NSUInteger)index;

unichar c = [all characterAtIdex:3];

4、字符串的比较方法

NSString *value = @"abc";NSString *value = @"ABC";

1)判断两个字符串对象是否相等

- (BOOL)isEqualToString:(NSString *)aString;

BOOL isEqual = [value1 isEqualToString:value2];
  • 结果是0说明不相等,结果是1,说明相等

2)判断两个字符串对象的大小

- (NSComparisonResult)compare:(NSString *)string;

NSComparisonResult result = [value1 compare:value2];
  • value1和value2 升序排序结果是-1,相等是0,降序排序是1

5、获取字符串的子串,以及字符串中的某个字符

1)获取子串——从输入的数字开始到最后

- (NSString *)substringFromIndex:(NSUInteger)from

NSString *substringFromIndex = [all substringFromIndex:3];

2)获取子串——从输入的数字之前

- (NSString *)substringToIndex:(NSUInteger)to

NSString *substringToIndex = [all substringToIndex:3];

3)声明一个变量用来指向获取的子串对象

- (NSString *)substringWithRange:(NSRange)range

// 声明一个变量  范围变量// 1、定义范围的起点// 2、定义范围的长度NSRange range = NSMakeRange(8,2);// 获取is字符串NSString *subString = [all substringWithRange:range];// 一般写成NSString *subString = [all substringWithRange:NSMakeRange(8,2)];

6、字符串链接(拼接)

NSString *value_1 = @"lanou";NSString *value_2 = @"3g";

1)声明一个结果字符串对象

NSString *result = nul;result = [value_1 stringByAppendingString:value_2];

2)声明一个结果字符串对象

*- (NSString )stringByAppendingFormat:(
NSString )format, …;*

NSString *result_2 = nul;result_2 = [value_2 stringByAppendingFormat:@" %@",value_1];
  • 在对字符串对象发送stringByAppending类型的方法的时候,该字符串对象是不会发生变化的。

7、替换字符串

*- (NSString )stringByReplacingCharactersInRange:(
NSRange)range withString:(NSString )replacement;*

NSString *str = [all stringByplacingCharactersInRange:NSMakeRange(1,3) withString:@"xxx"];

8、字符串与其他数据类型进行转换

@property (readonly) int intValue;

  • 其他类型的用法与其相同
NSString *value = @"2";int intValue = [value intValue];
  • 其中的int intValue可以替换为double doubleValue或者float floatValue

9、字符串改变大小写

1)字符串全部大写

@property(readonly,copy)NSString *uppercaseString;

NSString *upper = [all uppercaseString];

2)字符串全部小写

@property(readonly,copy)NSString *lowercaseString;

NSString *lower = [all lowercaseString];

3)字符串首字母大写

@property(readonly,copy)NSString *capitalizedString;

NSString *capital = [all capitalizedString];

10、字符串的前后缀

1)是否以指定字符串为前缀

- (BOOL)hasPrefix:(NSString *)str;

BOOL b1 = [all hasPrefix:@"m"]; // 判断是否以字符m开头

2)是否以指定字符串为后缀

- (BOOL)hasSuffix:(NSString *)str;

BOOL b2 = [all hasSuffix:@"h"]; // 判断是否以字符h结尾

二、NSMutableString的常用方法(可变字符串)

NSMutableString *strm = [NSMutableString stringWithCapacity:100];

1、拼接字符串

- (void)appendFormat:(NSString *)format, …

[strm appendFormat:@"Lan"];

2、插入字符串

- (void)insertString:(NSString *)aString atIndex:(NSUInteger)loc

[strm insertString:@"a" atIndex:1];

3、删除字符串

- (void)deleteCharactersInRange:(NSRange)range

[strm deleteCharactersInRange:NSMakeRange(1, 1)];

4、替换字符串

- (void)replaceCharactersInRange:(NSRange)range withString:(NSString *)aString

[strm replaceCharactersInRange:NSMakeRange(2, 1) withString:@"m"];

5、重置字符串

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

[strm setString:@"hao"];
0 0
原创粉丝点击