zoukankan      html  css  js  c++  java
  • 小白学开发(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;

    }


  • 相关阅读:
    【BZOJ2844】albus就是要第一个出场 高斯消元求线性基
    Python入门之面向对象module,library,package之间区别
    Python入门之字典的操作详解
    Python Web学习笔记之TCP/IP协议原理与介绍
    Python Web笔记之高性能网络编程
    Python Web学习笔记之面试TCP的15个问题
    Python Web学习笔记之TCP/IP、Http、Socket的区别
    Python Web学习笔记之TCP、UDP、ICMP、IGMP的解释和区别
    Python Web学习笔记之IGMP和ICMP的差别
    Python设计模式之单例模式
  • 原文地址:https://www.cnblogs.com/yfceshi/p/7136764.html
Copyright © 2011-2022 走看看