NSString

NSString對象用于存儲文本字符串

·創建NSString對象:
//1.快速創建
NSString *str1 = @"這是 個字符串!";
//2.alloc創建的字符串
NSString *str2 = [[NSString alloc] initWithString:@"通過alloc創建的字符串"];
//3.通過格式化符創建
int a = 100;
NSString *str3 = [[NSString alloc] initWithFormat:@"通過alloc創建,數值是:%d",a];
//4.通過格式化符創建
NSString *str4 = [NSString stringWithFormat:@"通過類方法創建,數值是:%d",a];

比較字符串的大小

NSString *s1 = [NSString stringWithFormat:@"字符串"];
NSString *s2 = [NSString stringWithFormat:@"字符串"];
// 較的是指針地址
if (s1 == s2) {
      NSLog(@"s1 == s2");
}
//比較是字符串里的內容
BOOL isSame = [s1 isEqualToString s2];
if(isSame) {
    NSLog {@"字符串內容一樣"};
}

比較字符串

NSString *s1 = [NSString stringWithFormat:@"a"];
NSString *s2 = [NSString stringWithFormat:@"b"];
// 比較大小
NSComparisonResult result = [s1 caseInsensitiveCompare s2];
if (result == NSOrderedAscending) {
      NSLog(@"升序:a<b");
 } else if(result == NSOrderedSame) {
      NSLog(@"內容相同");
}else if(result == NSOrderedDescending) {
      NSLog(@"降序,a>b");
}

取得字符串長度

NSString *s = @"abc";
//字符串長度
unsigned int len = [s length];

大小寫轉換

NSString *hello = @"hello WORLD";
// 全部大寫
NSLog(@"%@", [hello uppercaseString]); 
 // 全部小寫
NSLog(@"%@", [hello lowercaseString]);
//  首字母大寫,其他字母變小寫
NSLog(@"%@", [hello capitalizedString]); 

轉換為基本數據類型

 NSString *str1 = @"10";
 int a = [str1 intValue];

 NSString *str2 = @"10.25";
 float b = [str2 floatValue];

 NSString *str3 = @"1"; 
BOOL flag = [str3 boolValue];

訪問指定位置字符

//結果:b   指定位置是從0開始計算的
 NSString *string = @"abcdef"; 
char s = [string characterAtIndex:1];

字符串的截取

指定位置是從0開始計算的

1.分割字符串

NSString *str = @"aaasdfsdf,bbb,ccc,ddd";
//使用”,”分割 形成不同的字符串在數組中
NSArray *array = [str componentsSeparatedByString:@“,"];

2.截取到指定位置

NSString *string = @"abcdef";
//截取索引為2前面的字符串,   結果為ab,
NSString *subString1 = [string substringToIndex:2];

3.從指定位置截取到末尾

//從索引為1的位置截取到末尾  結果為bcde;
NSString *subString2 = [string substringFromIndex:1];

4.指定范圍截取

//NSRange表示范圍,(位置, 度)    結果為bc
NSRange range = NSMakeRange(1, 2);
NSString *subString3 = [string substringWithRange:range];

拼接字符串

NSString *str1 = @"ab"; 
//字符串1
NSString *str2 = @"cd"; 
//字符串2
NSString *string1 = [NSString stringWithFormat:@"字符串1:%@, 字符串2:%@",str1,str2];
//結果:字符串1:ab, 字符串2:cd
NSString *string2 = [str1 stringByAppendingString:str2];
//結果:abcd
NSString *string3 = [str1 stringByAppendingFormat:@“追加字符串2:%@",str2];
結果:追加字符串2:cd

查找字符串中的內容

NSString *email = @"123456@qq.com";
NSString *substring = @"@qq.com";
//在字符串email中查找substring
NSRange range = [email rangeOfString substring];
if (range.location != NSNotFound) {
NSLog(@"%@包含%@",email,substring);
NSLog(@"位置是:%ld, 度是:%ld",range.location,range.length);
} else {
NSLog(@"沒找到");
}

替換字符串

//結果:123456@163.com
NSString *newEmail = [email stringByReplacingOccurrencesOfString:@"qq.com" withString:@"163.com"];

判斷字符串是否有相應的前綴后綴

    NSString *str23 = @"wxhl@edu.com";
    BOOL isPrefix = [str23 hasPrefix:@"wxhl"];
    NSLog(@"isPrefix:%d", isPrefix);
    BOOL isSuffix = [str23 hasSuffix:@"co"];
    NSLog(@"isSuffix:%d", isSuffix);
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • <1>常用創建方法//實例化方法創建 (instancetype)initWithString:(NSString...
    DVWang閱讀 890評論 0 0
  • #pragma mark 字符初始化 //創建一個不可變字符串str1 值是常量字符串 //打印字符串用%@來打印...
    _菩提本無樹_閱讀 1,397評論 0 0
  • NSString:不可變字符串 NSMutableString:可變字符串 //c語言中的字符串 char *s ...
    Sunney閱讀 379評論 0 0
  • NSString:不可變字符串 NSMutableString:可變字符串 //c語言中的字符串 char *s ...
    Sunney閱讀 596評論 0 0
  • 文/安安 前景回顧:我一直在你身后,沒離開過(三十七) 第二天一大早,六安起床洗漱,今天上午有班主任的課,要提前去...
    安之以北閱讀 246評論 0 0