• 小白学开发(iOS)OC_ 字符串的获取 (2015-08-11)


    //

    //  main.m

    //  字符串的获取

    //

    //  Created by admin on 15/8/13.

    //  Copyright (c) 2015 admin. All rights reserved.

    //


    #import <Foundation/Foundation.h>

    /*

        1. 获取字符串长度

        2. 依据字符串索引获得单个字符    // 这里的索引 就是下标

        3. 依据索引获得一个字符串

        4. 依据子串获得子串在还有一个字符串中的索引位置

        5. 依据字符串。获得字符串的范围

     */



    int main(int argc, const char * argv[]) {

        @autoreleasepool {

    //  1. 获取字符串长度

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

            NSUInteger length = [str1 length];  // NSUIteger 表示的是一个无符号的整型

            NSLog(@"length = %lu",length);

            

    /*  2. 依据索引获得字符串中的单个字符

           注意:

         > 给定的索引值必须在0到长度之间。否组会导致异常Range or index out of bounds

         > 假设索引值为负。那么获得的值是个负数

     */

            unichar c = [str1 characterAtIndex:0];

            NSLog(@"获得的字符串是:%c",c);

            

    //   3. 依据索引值获得字符串的一个子串

            // 从索引開始。包含索引取后面的字符串

            NSString *tmpstr2 = [str1 substringFromIndex:3];

            // 从开头取字符串到索引位置,不包含索引

            NSString *tmpstr3 = [str1 substringToIndex:5];

            // NSRange是个结构体,取字符串的范围,第一个參数为从哪个索引值開始,第二个參数表示取多长

            NSRange s = {6,3};

            NSString *tmpstr4 = [str1 substringWithRange:s];

            NSLog(@"tmpstr2 = %@",tmpstr2);

            NSLog(@"tmpstr3 = %@",tmpstr3);

            NSLog(@"tmpstr4 = %@",tmpstr4);

    //  4. 获得子串在还有一个字符串中的索引位置

            NSString *tmpstr5 = @"bai";

            //  在字符串中寻找子串。并将索引起始位置location和长度length存入到结构体中

            NSRange tmpRange = [str1 rangeOfString:tmpstr5];

            //  分别打印

            NSLog(@"location = %lu, length = %lu",tmpRange.location,tmpRange.length);

            //  能够使用NSStringFromRange 把一个Range结构体转换成字符串

            NSString *tmpstr6 = NSStringFromRange(tmpRange);

            NSLog(@"tmpstr6 = %@",tmpstr6);

            

            //  推断是否找到

            if (tmpRange.location == NSNotFound) {//enum {NSNotFound = NSIntegerMax};

                NSLog(@"tmpstr5不在str1");

            }else

            {

                NSLog(@"rangeOfString %@",tmpstr6);

            }

    //  5. 获得子串索引范围

            //  第一个參数为子串,第二个參数为 选择搜索的方法

            NSRange tmpRange2 = [str1 rangeOfString:@"com" options:NSCaseInsensitiveSearch];

            NSRange tmpRange3 = [str1 rangeOfString:@"com"];

            NSLog(@"tmpRange2 = %@",NSStringFromRange(tmpRange2));

            NSLog(@"tmpRange3 = %@",NSStringFromRange(tmpRange3));

        }

        return 0;

    }


  • 相关阅读:
    linux系统安装mysql数据库
    laypage分页控件使用方法
    could not get wglGetExtensionsStringARB
    Eclipse -- 自动补齐设置和其他用法
    Android开发--AndroidManifest.xml文件解析
    Java--常识
    课题论文写作时思路---目前存在的不足
    课题论文之调研---已有研究算法概述
    课题论文之调研---脏腑辨证
    Bayesian 网络分类算法
  • 原文地址:https://www.cnblogs.com/yfceshi/p/7136764.html
Copyright © 2020-2023  润新知