iOS中的字符串操作大全

iOS字符串的操作比較重要也比較多,終於收集全力了,趕緊收藏吧


<span style="background-color: rgb(192, 192, 192);"><span style="font-size:24px;">#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        /**
         *  字符串的多種創建方式
         */
        //1、快速創建
        NSString* str1 = @"這是第一個字符串";
        NSInteger len = [str1 length];
        NSLog(@"%@",str1);
        NSLog(@"字符串的長度為:%ld",len);
        //2、alloc創建字符串,累贅,已不建議使用
        //NSString* str2 = [[NSString alloc]initWithString:@"alloc創建的字符串"];
        //NSLog(@"%@",str2);
        //3、格式化符創建
        NSString* str3 = [[NSString alloc]initWithFormat:@"格式化創建,上一句是%@",str1];
        NSLog(@"%@",str3);
        //4、格式化符創建方式二
        int a = 10;
        NSString* str4 = [NSString stringWithFormat:@"類方法創建,%d",a];
        NSLog(@"%@",str4);
        
        /**
         *  比較字符串
         */
        NSString* s1 = [NSString stringWithFormat:@"ksjflkjdlf"];
        NSString* s2 = [NSString stringWithFormat:@"ksjflkjdlf"];
        if (![s1 compare:s2]) {
            NSLog(@"兩個字符串相等");
        }
        if (s1 == s2) {
            NSLog(@"這是比較兩個字符串指針地址");
        }
        if ([s1 isEqualToString:s2]){
            NSLog(@"兩個字符串相等");
        }
        // s1 caseInsensitiveCompare:s2爲忽略大小寫比較
        if ([s1 caseInsensitiveCompare:s2]  == NSOrderedAscending){
            NSLog(@"升序,s2 > s1");
        }else if ([s1 caseInsensitiveCompare:s2] == NSOrderedSame){
                NSLog(@"升序,s1 = s2");
        }else if ([s1 caseInsensitiveCompare:s2] == NSOrderedDescending){
            NSLog(@"降序,s1 > s2");
        }
        
        /**
         *  轉換字符串
         */
        NSString * string1 = @"Welcome to BeiJing";
        NSLog(@"%@",[string1 uppercaseString]);  //將字符串全部大寫
        NSLog(@"%@",[string1 lowercaseString]);  //將字符串全部小寫
        NSLog(@"%@",[string1 capitalizedString]);  //將字符串首字母大寫,其餘變小寫
        NSString *string2 = @"37498";
        NSLog(@"將字符串轉換為整型:%ld",[string2 integerValue]);
        NSString *string3 = @"37.498";
        NSLog(@"將字符串轉換為浮點型:%f",[string3 floatValue]);
        NSString *string4 = @"1";
        NSLog(@"將字符串轉換為布尓型:%d",[string4 boolValue]);
        
        /**
         *  截取字符串
         */
        NSString *charString1 = @"abcdefg,sdjfk,ncnv,dkjf";
        //以逗號為分割符分割字符串存儲於數組中
        NSArray *array = [charString1 componentsSeparatedByString:@","];
        NSLog(@"%@",array);
        //訪問指定位置字符
        char s = [charString1 characterAtIndex:4];
        NSLog(@"%c",s);
        //截取位置前面的字符串,不包括指定位置的字符
        NSString * subString1 = [charString1 substringToIndex:5];
        NSLog(@"%@",subString1);
        //截取位置後面的字符串,包括指定位置字符
        NSString * subString2 = [charString1 substringFromIndex:15];
         NSLog(@"%@",subString2);
        //截取位置3之後的9個字符串
        NSRange rang = NSMakeRange(3, 9);
        NSString * subString3 = [charString1 substringWithRange:rang];
        NSLog(@"%@",subString3);
        
        /**
         *  拼接字符串
         */
        NSString *monString = [subString1 stringByAppendingString:subString2];
        NSLog(@"%@",monString);
        //追加字符串,類似字符串拼接
        NSString *monString1 = [subString2 stringByAppendingFormat:@"%@",subString3];
        NSLog(@"%@",monString1);
        
        /**
         *  查找字符串
         */
        NSRange r = [charString1 rangeOfString:subString1];
        if (r.location != NSNotFound) {
            NSLog(@"%@中包含了%@",charString1,subString1);
            NSLog(@"位置是:%ld,長度爲:%ld",r.location,r.length);
        }else{
            NSLog(@"沒有找到");
        }
        
        /**
         *  替換字符串
         */
        NSString *replace = [charString1 stringByReplacingOccurrencesOfString:@"abcd" withString:@"替換"];
        NSLog(@"替換後的字符串:%@",replace);
        
        /**
         *  可變字符串
         */
        //alloc方式創建
        NSMutableString *mutablestring1 = [[NSMutableString alloc] initWithFormat:@"helloword"];
        //類方法創建
        NSMutableString *mutablestring2 = [NSMutableString stringWithString:@"字符串"];
        //創建了一個可變字符串對象,字符內容爲空,等着以後追加,插入
        NSMutableString *mutablestring3 = [NSMutableString string];
        NSMutableString *mutablestring4 = [[NSMutableString alloc] init];
        //插入字符串
        [mutablestring4 insertString:@"可變字符串" atIndex:0];
        NSLog(@"插入後的字符串:%@",mutablestring4);
        [mutablestring3 insertString:@"新增的字符串" atIndex:0];
        NSLog(@"插入後的字符串:%@",mutablestring3);
        //刪除指定位置字符串
        NSRange nr =NSMakeRange(0, 3);
        [mutablestring2 deleteCharactersInRange:nr];
        NSLog(@"刪除後的字符串:%@",mutablestring2);
        //追加字符串
        [mutablestring1 appendString:@"追加"];
        NSLog(@"追加後的字符串:%@",mutablestring1);
        //替換字符串,第0個字符開始替換掉1個字符
        NSRange range1 = {0,1};
        [mutablestring1 replaceCharactersInRange:range1 withString:@"替換"];
        NSLog(@"替換後的字符串:%@",mutablestring1);
        
    }
    return 0;</span></span>
<span style="background-color: rgb(192, 192, 192);"><span style="font-size:24px;">
</span></span>
<span style="background-color: rgb(192, 192, 192);"><span style="font-size:24px;">
</span></span>
<span style="background-color: rgb(192, 192, 192);"><span style="font-size:24px;">輸出效果如下</span></span>
<span style="background-color: rgb(192, 192, 192);"><img src="https://img-blog.csdn.net/20150804222057645?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="500" height="700" alt="" />
</span>
<span style="background-color: rgb(192, 192, 192);">
}</span>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章