本帖最后由 huguozhang 于 2015-7-16 22:41 编辑
- (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";
|