Objective-C NSString類的常用方法,nsstring常用方法
提示:前面的較為常用
1、建立字串
執行個體方法:
- (instancetype)initWithFormat:(NSString *)format
格式化產生一個字串對象
此方法較為常用,功能強大,用法:[[NSString alloc] initWithFormat:@"i am student at %@ of Technology",@"GuangDong University"];
- (instancetype) initWithString:(NSString *)aString
根據給定的字串產生一個字串對象
- (instancetype) initWithUTF8String:(const char *)bytes
UTF-8編碼格式的C字串產生一個字串對象
- (instancetype)initWithCharacters:(const unichar *)characters
length:(NSUInteger)length
根據給定的C字串(無編碼)和字串長度產生一個字串對象
類方法:
+ (instancetype)stringWithFormat:(NSString *)format, ...
格式化產生字串
+ (instancetype)stringWithString:(NSString *)aString
+ (instancetype)stringWithCharacters:(const unichar *)chars
length:(NSUInteger)length
+ (instancetype)stringWithCString:(const char *)cString
encoding:(NSStringEncoding)enc
+ (instancetype)stringWithUTF8String:(const char *)bytes
2、常用屬性
@property(readonly) NSUInteger length
得到字串的長度
@property (readonly, copy) NSString *uppercaseString;
將字串中的小寫字母轉換成大寫字母
@property (readonly, copy) NSString *lowercaseString;
將字串中的大寫字母轉換成小寫字母
@property (readonly, copy) NSString *capitalizedString;
將字串中的單詞首字母轉換成大寫字母,其餘的變為小寫
@property(readonly) double doubleValue
@property(readonly) float floatValue
@property(readonly) int intValue
@property(readonly) NSInteger integerValue
@property(readonly) long long longLongValue
@property(readonly) BOOL boolValue
得到字串的基礎資料型別 (Elementary Data Type)
調用方法:str.uppercaseString; str.lowercaseString; str.capitalizedString(執行個體名.屬性名稱)
3、常用方法:
- (NSString *)stringByAppendingFormat:(NSString *)format, ...
在字串後面添加格式化字串
- (NSString *)substringFromIndex:(NSUInteger)anIndex
截取子字串(從anIndex位置字元(包含)開始到字串結束)
- (NSString *)substringToIndex:(NSUInteger)anIndex
截取子字串(從0位置截取長度為anIndex個字元的字串)
- (BOOL)containsString:(NSString *)str
判斷字串裡是否包含str字串
- (BOOL)hasPrefix:(NSString *)aString
字串是否含有aString字串首碼
- (BOOL)hasSuffix:(NSString *)aString
字串是否含有aString字串尾碼
- (BOOL)isEqualToString:(NSString *)aString
判斷字串和aString是否相等
- (NSRange)rangeOfString:(NSString *)aString
尋找aString字串在調用方法的字串中的範圍(起始位置和長度)
- (NSString *)stringByReplacingOccurrencesOfString:(NSString*)target withString:(NSString *)replacement
將字串中的子字串target替換replacement字串
- (NSString *)stringByReplacingCharactersInRange:(NSRange)range
withString:(NSString *)replacement
將字串中range指定的範圍的字串替換為replacement字串
- (NSComparisonResult)compare:(NSString *)aString
比較字串和astring字串
- (NSString *)stringByAppendingString:(NSString *)aString
在字串後面添加字串aString
- (NSString *)substringWithRange:(NSRange)aRange
截取子字串(範圍由aRange中的location和length決定)
NSRange用NSMakeRange(NSUInteger loc, NSUInteger len)方法得到
- (unichar)characterAtIndex:(NSUInteger)index
取得字串第index個位置(從0開始)的字元
- (void)getCharacters:(unichar *)buffer
將字串的內容字元儲存到緩衝buffer中
- (void)getCharacters:(unichar *)buffer
range:(NSRange)aRange
將range指定的範圍的字元儲存到buffer中
備忘:
NSMutableString(可變字串)
可變的類在定義時一定要先初始化
- (void)appendFormat:(NSString*)format, ...
在字串後追加格式化字串
- (void)appendString:(NSString*)aString
在字串後添加字串aString
- (void)deleteCharactersInRange:(NSRange)aRange
刪除aRange指定的範圍的字串
- (void)insertString:(NSString*)aString
atIndex:(NSUInteger)anIndex
在anIndex位置上插入字串aString
- (void)replaceCharactersInRange:(NSRange)aRange
withString:(NSString*)
aString
將aRange指定範圍的字串替換為aString
- (void)setString:(NSString*)aString
設定字串為給定字串aString