Object C學習筆記8-字串NSString之二

賀臣發表於2014-02-14

  5. 字串是否包含

    hasPrefix 判斷字串是否以某個字串開頭

    hasSuffix 判斷字串是否以某個字串結尾

    NSString *str1=@"Object C學習正在進行中.... LOVE";
        if([str1 hasPrefix:@"Object"]){
            NSLog(@"字串:%@是以%@開頭",str1,@"Object");
        }
        
        if([str1 hasSuffix:@"LOVE"]){
            NSLog(@"字串:%@是以%@結尾",str1,@"LOVE");
        }
        
        if([str1 hasSuffix:@"love"]){
            NSLog(@"字串:%@是以%@結尾",str1,@"LOVE");
        }   
測試例子

    注意以上方法都是要區分大小寫的。

 

  6. 擷取字串

    substringToIndex: 擷取從索引0到特定位置處的字串

    substringFromIndex: 擷取從特定位置到字串末尾的字串

    substringWithRange:從特定位置開始擷取特定長度的字元

NSString *str2=[str1 substringToIndex:3];
        NSLog(@"從索引0開始擷取到索引3的位置: %@",str2);

        NSString *str3=[str1 substringFromIndex:4];
        NSLog(@"所索引位置4開始擷取到末尾: %@",str3);

        NSRange range=NSMakeRange(2,100);
        NSString *str4=[str1 substringWithRange:range];
        NSLog(@"從指定位置開始擷取特定長度: %@",str4);


        range=NSMakeRange(2, 100);
        NSString *str5=[str1 substringWithRange:range];
        NSLog(@"從指定位置開始擷取特定長度: %@",str5);
測試例子

    這裡要注意NSRange 獲取NSRange的例項要使用NSRange range=NSMakeRange(2,100); 第一個引數為索引位置,第二個引數為長度,當使用substringWithRange方法的時候,如果擷取的長度超過了字串的本身長度就會報錯。這裡需要注意一下

 

  7. 字串大小寫轉化

    uppercaseString將字串轉化為大寫

    lowercaseString將字串轉化為小寫

    capitalizedString將字串首字母轉化為大寫

        NSString *str1=@"object C 大小寫轉化 Love";
        //轉化為大寫
        NSString *str2=[str1 uppercaseString];
        NSLog(@"轉化為大寫:%@",str2);
        
        //轉化為小寫
        NSString *str3=[str1 lowercaseString];
        NSLog(@"轉化為小寫: %@",str3);
        
        //首字母大寫
        NSString *str4=[str1 capitalizedString];
        NSLog(@"首字母大寫: %@",str4);
測試例子

 

  8. 查詢字串

    查詢字串可以使用rangeOfString方法,該方法返回NSRange 可以獲得匹配的字串的起始位置以及長度

    NSString *str1=@"object C 大小寫轉化 Love";

        NSString *t=[[NSString alloc] initWithCString:"Love"];
        
        NSRange range=[str1 rangeOfString:t];
        
        NSLog(@"Location=%d",range.location);
        NSLog(@"length=%d",range.length);
測試例子

 

  9. 替換字串

    可以使用stringByReplacingCharactersInRange方法替換特定位置的字串

    可以使用stringByReplacingOccurrencesOfString將特定字串替換為指定字串

NSString *str1=@"object C 大小寫轉化 Love";

        NSString *t=[[NSString alloc] initWithCString:"Love"];
        
        NSRange range=[str1 rangeOfString:t];
        
        NSLog(@"Location=%d",range.location);
        NSLog(@"length=%d",range.length);
        
        NSString *str2=[str1 stringByReplacingCharactersInRange:range withString:@"XCode"];
        NSLog(@"替換之後的字串為:%@",str2);
        
        
        
        NSString *str1=@"Love object C 大小寫轉化 Love";
        NSString *str2=[str1 stringByReplacingOccurrencesOfString:@"Love" withString:@"XCode"];
        NSLog(@"替換之後的字串:%@",str2);
測試例子

 

    

相關文章