------Java培训、Android培训、iOS培训、.Net培训、期待与您交流!-------
- (NSString *)uppercaseString; 全部字符转为大写字母
- (NSString *)lowercaseString 全部字符转为小写字母
- (NSString *)capitalizedString 首字母变大写,其他字母都变小写。如果一个句子中有多个单词,那么会将每个单词的首字母 变成大写,其余字母变成小写
- (BOOL)isEqualToString:(NSString *)aString; 两个字符串的内容相同就返回YES, 否则返回NO注意: == 比较的是两个对象的地址是否相同, 不是字符串内容
- (NSComparisonResult)compare:(NSString *)string; 这个方法可以用来比较两个字符串内容的大小比较方法: 逐个字符地进行比较ASCII值,返回NSComparisonResult作为比较结果
NSComparisonResult是一个枚举,有3个值:
如果左侧 > 右侧,返回NSOrderedDescending,
如果左侧 < 右侧,返回NSOrderedAscending,
如果左侧 == 右侧返回NSOrderedSame
- (NSComparisonResult) caseInsensitiveCompare:(NSString *)string; 忽略大小写进行比较,返回值与compare:一致
- (BOOL)hasPrefix:(NSString *)aString; 是否以aString开头
- (BOOL)hasSuffix:(NSString *)aString; 是否以aString结尾
- (NSRange)rangeOfString:(NSString *)aString;
用来检查字符串内容中是否包含了aString
如果包含, 就返回aString的范围
如果不包含, NSRange的location为NSNotFound, length为0
反方向搜索:[str rangeOfString: @”str” options: NSBackwardsSearch]; // 从后向前 搜索
- (NSString *)substringFromIndex:(NSUInteger)from; 从指定位置from开始(包括指定位置的字符)到尾部
- (NSString *)substringToIndex:(NSUInteger)to; 从字符串的开头一直截取到指定的位置to,但不包括该位置的字符
- (NSString *)substringWithRange:(NSRange)range; 按照所给出的NSRange从字符串中截取子串
- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement;
用replacement替换target
- (NSUInteger)length; 返回字符串的长度(有多少个字符,无论中文字符、英文字符等等,一个字符就是一个字符)
- (unichar)characterAtIndex:(NSUInteger)index; 返回index位置对应的字符
字符串转为基本数据类型
- (double)doubleValue;
- (float)floatValue;
- (int)intValue;
- (char *)UTF8String; // 在操作SQLite数据库时才会用到转为C语言中的字符串。 以后可能会用到别人的框架,都是纯C语言的,所以可能会用到把OC字符串转换为C语言的字符串。
/** 参考代码:
C语言字符串:char *name = “steve”;
NSString *s1 = @"123”; char *s2 = s1.UTF8String; printf("%s", s2);
*/
去除所有的空格:
[str stringByReplacingOccurrencesOfString:@" " withString:@""]
去除首尾的空格:
[str stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
6> NSString的不可变性
* NSString *s1 = @"aa"; s1 = @"bb";