//@""空的字符串对象-------分割
NSString * ptr = @"I am a man";
NSArray * array = [ptr componentsSeparatedByString:@" "];//将字符串整体作为分割条件 返回值为NSArray不可变数组
NSMutableArray * array1 = [NSMutableArray arrayWithArray:array];//若修改,则将NSArray转化为NSMutableArray
NSArray * array2 = [ptr componentsSeparatedByCharactersInSet:[NSCharacterSet                                           
characterSetWithCharactersInString:@", "]];//以字符串中的字符作为分割条件进行分割
《字符集合》
NSCharacterSet 这是个字符集合类
[NSCharacterSet characterSetWithCharactersInString:@", "]//把字符串转化为字符集合
-------拼接
NSString * str = [array componentsJoinedByString:@" "];
若分割条件出现在开头或者结尾,则会出现空串@"",如果不需要,则需要转化成NSMutableString对空串进行处理
func1:  [array1 removeObject:@""];     //找到空串直接删除
func2:  for(id obj in array1){
 if([obj length] == 0)           //空串的长度为0
 if([obj isEqualToString:@""])   //与空串进行比较(字符串是不能进行==比较的,要使用函数)       
}
 
可变数组:
NSMutableArray * array = [[NSMutableArray alloc]initWithObjects:@"one",@"two",@"three",@"four", nil];
[array addObject:@"five"];//在数组尾部插入元素
[array insertObject:@"six" atIndex:5];//在数组指定下标位置插入元素(不能越界,最大值为length)
 
[array removeObject:@"six"];//删除指定元素(数组中出现的所有位置都将被删除)
[array removeObject:@"two" inRange:NSMakeRange(0, 3)];//从指定下标位置开始的指定长度内删除指定元素
[array removeLastObject];//删除最后一个元素
[array removeAllObjects];//删除所有元素
     
[array replaceObjectAtIndex:3 withObject:@"ios"];//将指定下标位置元素替换为指定的元素
[array exchangeObjectAtIndex:0 withObjectAtIndex:3];//将指定下标的两个元素进行交换
 
不可变数组:
NSArray * array = [[NSArray alloc]initWithObjects:@"one",@"two",@"three",@"one", nil];
 
NSUInteger index = [array indexOfObject:@"one123"];//返回第一个找到的数组成员对应的下标 找不到返回NSNotFound
 
index = [array indexOfObject:@"one" inRange:NSMakeRange(1, 3)];//在指定范围内查找
    if (index != NSNotFound) {
         NSLog(@"%ld",index);
    }
----抽取 组成新的数组
NSArray * array1 = [array objectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)]];
《数字集合》
NSIndexSet这是个数字集合类
[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)]产生一个数字集合
 
原文地址:http://my.oschina.net/outatu/blog/124967

OC 数组以及字符串拼接与分割的更多相关文章

  1. Obj-C数组以及字符串拼接与分割

    本文转载至 http://mobile.51cto.com/iphone-392148.htm Obj-C只是增加了一点“特殊语料”的C语言,所以可以用printf()代替NSLog().但我们建议使 ...

  2. NSString用法,object-C数组以及字符串拼接和分割

    一.介绍使用NSString创建一个字符串的代码如下: #import <Foundation/Foundation.h>int main (int argc, char *argv[]) ...

  3. java数组、字符串拼接

    1. 数组实现拼接 int[] arr ={11,22,33,44,55,66}; System.out.print("["); for (int i = 0; i <arr ...

  4. 操作 html 的时候是使用 dom 方法还是字符串拼接?

    比如一个列表里面有很多个 li,要给他们加上数据.但多少个 li 是不确定的,由后台数据确定.这时候,就要动态生成 html 内容了. 那么,这个过程, 是使用 += 方法把标签.数据进行一个个的字符 ...

  5. 字符串拼接 strcat ;数组和指针的区别

    问题:字符串拼接 strcat 方法1: 开辟新空间,存放结果: #include <stdio.h> #include <stdlib.h> #include <str ...

  6. php把字符串指定字符分割成数组

    <?php $str="1|2|3|4|5|"; $var=explode("|",$str); print_r($var); ?> $var=ex ...

  7. iOS开发-OC语言 (三)字符串

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 24.0px "PingFang SC" } p ...

  8. javascript中数组和字符串的方法比较

    × 目录 [1]可索引 [2]转换 [3]拼接[4]创建[5]位置 前面的话 字符串和数组有很多的相同之处,它们的方法众多,且相似度很高:但它们又有不同之处,字符串是不可变值,于是可以把其看作只读的数 ...

  9. 15.Object-C--浅谈Foundation框架OC数组NSArray与NSMutableArray

    昨天总结了一下NSString与NSMutableString,今天我在这里总结一下NSArray与NSMutableArray. NSArray数组是:不可变数组. nil 是数组元素结束的标记.O ...

随机推荐

  1. Android中MD5加密

    最近项目中遇到MD5加密,代码很简单,又是死代码,不过要注意当长度不足32的时候要补个0.下面是具体代码,直接拷贝就能用. public static String getMD5(String str ...

  2. c++ 根据生产日期,保质期求出过期时间

    第4关:计算日期 挑战任务 我们吃的食物都有保质期,现在食品监督管理局想要制作一个能准确计算食品过期日期的小程序,需要请你来进行设计. 例如:A食品在2018年1月1日生产,保质期是20天,则它的过期 ...

  3. Codeforces Round #533 (Div. 2)

    C: 题意: 有n个整数ai,数列a有两个神奇的性质.1.所有的整数都在[l,r]范围内.2.这n个数的和能被3整除.现在给出l和r,和个数n,问你有多少种方法构造出数列a,方案数mod1e9+7. ...

  4. .net为图片添加水印(转) jpg png和gif格式

    .net为图片添加水印(转) jpg png和gif格式 .net为图片添加水印(转) jpg png和gif格式,转自csdn的hyde82,现在跟大家一起来分享下: 利 用.net中System. ...

  5. LINQ to Entities 不支持 LINQ 表达式节点类型“ArrayIndex”。

    错误原因: bool res1 = S_ROLE_MENU_PURVIEWCODE_Manage.Delete(c => c.MPC_CODE == strs[0]); linq不能写strs[ ...

  6. [SoapUI] 配置默认环境的properties

    <Envs> <Env id="Live,Default environment"> <Project> <CusProperty nam ...

  7. 递归生成treeview树形节点(没有用递归函数之后会有补充,这里只用系统的内置方法去生成)

    using System;using System.Collections.Generic;using System.ComponentModel;using System.IO;using Syst ...

  8. MongoDB复制集搭建(3.4.17版)

    ==版本== mongodb-linux-x86_64-rhel70-3.4.17.tgz ==准备== 3个节点,我这里的IP及hostname分别是: 10.11.2.52 dscn49 10.1 ...

  9. 2018.10.04 NOIP模拟 排队(组合数学)

    传送门 T2原题啊. 直接组合数学求出合法方案数,再除去一个(n+m)!(n+m)!(n+m)!: ans=0(n<m)ans=0(n<m)ans=0(n<m) ans=n+1−mn ...

  10. 2018.10.01 NOIP模拟 卡牌游戏(贪心)

    传送门 简单贪心题. 然而考试的时候失了智少讨论了一种情况导致gg. 实际上用到了二分图匹配的思想,L每次找到刚好比当前的牌小一点的出出去,看能匹配几个. 如何处理? 我们先考虑第一种比分策略. 我们 ...