網頁

顯示具有 NSString 標籤的文章。 顯示所有文章
顯示具有 NSString 標籤的文章。 顯示所有文章

2012年5月19日 星期六

(ios) NSString (六)【子字串的相關處理】

【環境:xCode4.2 , ios5.1】
1.說明:From:從指定位置到結尾。To:從開頭到指定位置。WithRange:傳回一個範圍和NSRange並用

 
- (NSString *)substringFromIndex:(NSUInteger)from;
- (NSString *)substringToIndex:(NSUInteger)to;
- (NSString *)substringWithRange:(NSRange)range;//Hint: Use with rangeOfComposedCharacterSequencesForRange: to avoid breaking up composed characters


<以下範例>
 
    NSString *string1 = @"this blog is n11 studio";
    NSString *string2 = [string1 substringFromIndex:13];
    NSLog(@"%@",string2);
    //the answer is "n11 studio" 

2.說明:Pre:判斷接收訊息的物件開頭是否為aString。Suf:判斷結尾是否是aString
- (BOOL)hasPrefix:(NSString *)aString;
- (BOOL)hasSuffix:(NSString *)aString;

(ios) NSString (五)【compare:】

【環境:xCode4.2 , ios5.1】
宣告:-(NSComparisonResult)compare:(NSString *)string1 option:(NSStringCompareOptions)mask range:(NSRange)range
名稱:用compare對字串中的字元進行逐一比較
說明:NSComparisonResult傳回的類型(註一),option為一個遮罩參數(註二),range表示要比較的範圍(註三

<以下範例>
 
    NSString *string1 = @"this blog is n11 studio";
    NSString *string2 = @"n11 studio";
    NSRange myRange;
    myRange.location = 13;
    myRange.length = 10;
    NSComparisonResult result = [string1 compare:string2 options:NSCaseInsensitiveSearch range:myRange];
    if(result == NSOrderedSame)
    {
        NSLog(@"it is the same");
    } 

(ios) NSString (四)【計算字串的字元個數】

【環境:xCode4.2 , ios5.1】
方法宣告:- (void)length
名稱:計算字串的字元個數
語法:[string1 length]
說明:傳回被呼叫字串中的字元個數

<以下範例>
 
    NSString *string1 = @"n11 studio";
    int stringLength = [string1 length];
    NSLog(@"%d",stringLength);

(ios) NSString (三)【初始化】

【環境:xCode4.2 , ios5.1】 名稱:
語法:initWithString: initWithFormat:
說明:字串的初始化方法,有些時候你可能需要將字串初始化並加上其他字串,用這個方法可以很快的使用,省去很多行的初始化
initWithString:
initWithFormat:
<以下範例>
 
    NSString *string1 = @"this ";
    NSString *string2 = [[NSString alloc] initWithFormat:@"is "];
    NSString *string3 = [[NSString alloc] initWithString:[NSString stringWithFormat:@"%@%@n11 studio",string1,string2]];
    NSLog(@"%@",string3); 

(ios) NSString (二)【stringByAppendingString:】

【環境:xCode4.2 , ios5.1】
名稱:字串相加
語法:[string1 stringByAppendingString:string2]
說明:這個的好處就是....可以一直無限加下去

<以下範例>
    NSString *string1 = @"n";
    NSString *string2 = [[NSString alloc] initWithFormat:@"studio"];
    string1 = [[string1 stringByAppendingString:@"11 "] stringByAppendingString:string2];
    NSLog(@"%@",string1);
    //the answer is "n11 studio"  

(ios) NSString (一)【isEqualToString:】

【環境:xCode4.2 ,  ios5.1】

名稱:比較字串
語法:[string1 isEqualToString:string2]

說明:有時我們想檢查這兩個字串的旗標,是否是同一個,則可以使用 ==。
若想察看兩個字串是否代表同一個數字時,請用isEqualToString:


<以下範例>

    NSString *string1 = @"n11 studio";
    NSString *string2 = [NSString stringWithFormat:@"n11 %@",@"studio"];
    //ex1
    if([string1 isEqualToString:string2])
    {
        NSLog(@"相同");
    }
    else
    {
        NSLog(@"不相同");
    }
    //ex2
    if(string1 == string2)
    {
        NSLog(@"相同");
    }
    else
    {
        NSLog(@"不相同");
    }
    //ex3
    if(string1 == string1)
    {
        NSLog(@"相同");
    }
    else
    {
        NSLog(@"不相同");
    }