iOS中的字串NSString

來源:互聯網
上載者:User

iOS中的字串NSString
建立一個字串對象:

NSstring * str1 = @"hello world";
NSString * str = [[NSString alloc]initWithString:@"hello world!"];
NSString * str_1 = [[NSString alloc]initWithUTF8String:"hello world"];//把C的字串轉化為OC的字串
int a = 123;

NSString * str_3 = [[NSString alloc]initWithFormat:@"a = %d %s%@", a, "abcd", @"efg"];//用格式化字串初始化

 

//可完成字串的拼接以及完成C的字串與OC的字串的轉化
NSString * str1 = [NSString stringWithString:@"hello world"];
NSString * str2 = [NSString stringWithUTF8String:"hello world"];
NSString * str3 = [NSString stringWithFormat:@"%s","hello world"];
NSstring * str1 = @"hello";
NSString * str = [[NSString alloc]initWithString:@"hello world!"];

NSString * str_1 = [[NSString alloc]initWithUTF8String:"hello world"];//把C的字串轉化為OC的字串

 

int a = 123;

NSString * str_3 = [[NSString alloc]initWithFormat:@"a = %d %s%@", a, "abcd", @"efg"];//用格式化字串初始化

 

字串轉化:

NSString * str = @"hello";
const char *p = [str UTF8String];將OC字串轉化為C的字串

str = @"123";
int a = [str intValue];//將數字串轉化成整型資料
[str floatValue];//將數字串轉化成float型
[str doubleValue];//將數字串轉化成double型
NSString * str = @"hello";
const char *p = [str UTF8String];將OC字串轉化為C的字串

str = @"123";
int a = [str intValue];//將數字串轉化成整型資料
[str floatValue];//將數字串轉化成float型

[str doubleValue];//將數字串轉化成double型

 

常用的NSString :

NSLog(@"%ld",[str1 length]); //求字串長度

NSLog(@"%c", [str1 characterAtIndex:1]);//擷取字串中的字元

BOOL ret = [str1 isEqualTo:str2];//比較兩個字串是否相等,相等返回YES(1),不相等返回NO(0) (BOOL YES(1) NO(0))

long ret1 = [str1 compare:str2];//比較兩個字串的大小,str1大於 返回1 相等返回0 小於返回-1

long ret2 = [str1 caseInsensitiveCompare:str2];//不區分大小寫比較字串大小

NSString * ptr = [str2 uppercaseString];//將字串中的所有小寫字元轉換成大寫 不改變原來的字串

ptr = [str1 lowercaseString];//將字串中的所有大寫字元轉換成小寫 不改變原來的字串

ptr = [str3 capitalizedString];//將字串中出現的第一個字母轉換成大寫,其餘字母小寫

NSString * str4 = @"hello world";

NSRange range = [str4 rangeOfString:@"wr"];//尋找子串,找不到返回NSNotFound 找到返回location和length

if (range.location != NSNotFound) {

NSLog(@"%ld %ld",range.location, range.length);

}

NSString * str5 = @"helloworld";

NSString * ptr1 = [str5 substringToIndex:4];//字串抽取 從下標0開始到4 不包括4

NSString * ptr2 = [str5 substringFromIndex:5];//從下標5開始抽取到字串結束 包括5

NSRange range1 = {4,3};//結構體初始化

NSString * ptr3 = [str5 substringWithRange:range1];//在range指定範圍內抽取

NSString * ptr4 = [str5 substringWithRange:NSMakeRange(4,3)];//NSMakeRange可以產生一個結構體



NSString * str = @"www.baidu.com";

BOOL ret = [str hasPrefix:@"www"];//判斷字串是否以指定字串開頭



NSString * str1 = @"1.txt";

BOOL ret1 = [str hasSuffix:@".txt"];//判斷字串是否以指定的字串結尾



NSMutableString可變字串(動態增加和減少的) 繼承於NSString可以使用NSString的所有方法

NSMutableString * str = [[NSMutableString alloc]initWithString:@"hello"];//將不可變的字串轉換為可變的字串

[str insertString:@"123" atIndex:1];//在指定下標(不要越界)位置插入NSString類型字串

[str appendString:@"123"];//在字串末尾追加字串

[str deleteCharactersInRange:NSMakeRange(0, 2)];//從指定下標刪除length個字元

[str setString:@"baidu"];//修改字串亦稱對該可變字串賦值

[str replaceCharactersInRange:NSMakeRange(3, 1) withString:@"ios"];//將指定下標位置的length個字元替換為指定的字串

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.